#include<stdio.h>int Decimal_to_octal(int a){ int m=0,n=1,c; while(a) { m+=(a%8)*n; a=a/8; n=n*10; } c=revers(m); return c; }int revers(int b){ int m=0,n=1; while(b) { m+=(b/10)*n; n=n*10; } return m;}main(){ int n,m; scanf("%d",&n); m=Decimal_to_octal(n); printf("%d\n",m);}
2 回答
已采纳
叫我皮卡丘
TA贡献23条经验 获得超13个赞
C语言比较死板,解决这个问题的两个办法:
1.你可以在#include<stdio.h>下一行对所有除main函数以外的函数进行声明,格式如下
int Decimal_to_octal(int a); int revers(int b);
2.把 revers函数和 Decimal_to_octal 函数的位置调换
如果要解释原因的话,因为 Decimal_to_octal函数调用了 revers函数,而此时 revers函数 在其后,编译器并未"看到" revers函数
- 2 回答
- 0 关注
- 1409 浏览
添加回答
举报
0/150
提交
取消