再也回不到从前 2017-06-05 14:34 采纳率: 50%
浏览 1038

为什么C语言设计十进制转2进制时用的printf而转成七进制时用不了,要用putchar

转二进制代码:
#include
int main()
{
void DotB(int n);
int n;
scanf("%d",&n);
DotB(n);
return 0;
}
void DotB(int n)
{
if(n)
{
DotB(n/8);
printf("%d",n%8);
}
}

转七进制代码:
#include
#include

void trans(int); 

int main()
{
int t;
printf("请输入要转换的十进制数:");
scanf("%d",&t);
printf("转换成七进制结果是:");
trans(t);
system("PAUSE");
return 0;
}
void trans(int n)
{
int i;
if((i=n/7)!=0) trans(i);
putchar(n%7+'0');
}

  • 写回答

2条回答 默认 最新

  • threenewbee 2017-06-05 16:10
    关注

    printf和putchar都是可以的,还有第一个代码是转换8进制,不是2进制。
    只有转换10进制以上,才必须用putchar

    评论

报告相同问题?

悬赏问题

  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试