输入ABCD,跑出1010101111001101,需要使用c++,不允许使用printf,scanf
用getchar接收每个字符,减去'A'加上10,然后循环求余2
#include<stdio.h>
void t22(int n)
{
if(n==0 || n==1)
putchar(n+'0');
else
{
t22(n/2);
putchar(n%2+'0');
}
}
void main()
{
char ch;
while((ch=getchar()) != '\n')
{
t22(ch-'A'+10);
}
return 0;
}
不知道你这个问题是否已经解决, 如果还没有解决的话: dec: 指示cout以十进制输出。 December
hex: 指示cout以十六进制输出。 Hexadecimal
oct: 指示cout以八进制输出。 October
#include<iostream>
using namespace std;
int main(){
int n_max = 42;
cout<<n_max<<endl; //十进制输出
cout<<hex<<n_max<<endl; //十六进制输出
cout<<oct<<n_max<<endl; //八进制输出
return 0;
}