慕后端8527005
2018-04-28 17:45:14
#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條經(jīng)驗 獲得超13個贊
C語言比較死板,解決這個問題的兩個辦法:
1.你可以在#include<stdio.h>下一行對所有除main函數(shù)以外的函數(shù)進行聲明,格式如下
int?Decimal_to_octal(int?a); int?revers(int?b);
2.把 revers函數(shù)和 Decimal_to_octal 函數(shù)的位置調(diào)換
如果要解釋原因的話,因為 Decimal_to_octal函數(shù)調(diào)用了?revers函數(shù),而此時?revers函數(shù) 在其后,編譯器并未"看到"?revers函數(shù)
點擊展開后面1條
- 2 回答
- 0 關注
- 1509 瀏覽
添加回答
舉報
0/150
提交
取消