-1
我是一個編碼,初學者,想聽聽你的建議涉及以下這個練習的解決方案:Ç - 計數數字
編寫環路提示數據類型長的正數或零整數的程序。然後應將整數組成的位數(以十進制表示)打印到stdout。輸入負數會立即停止程序。 輸出示例: 0有1個數字。 999有3位數字。等
我已經寫下面的代碼,並根據我做的測試,程序履行所有給定的任務。但是你怎麼看?我該如何改進它?
(而且我也認爲我不能使用任何完成有用的功能在任何C語言庫,它只是「簡單的」 C編碼左右。IDK如何描述它。)
(該編程語言是C)
#include <stdio.h>
int main(void)
{
long number;
int n=0;
do
{
printf("Enter a number: ");
scanf_s("%ld", &number);
if (number > 0)
{
while (number != 0)
{
number /= 10;
n++;
}
}
else if(number == 0){
n = 1;
}
else {
exit();
}
printf("The number you've entered has %d digits.\n\n",n);
n = 0;
} while (getchar() != 'EOF');
return 0;
}
什麼是「EOF」?編譯器不會對你發出警告嗎? – alk
對不起,但是SO不是徵求意見的地方,只是事實。 http://stackoverflow.com/help/dont-ask – Rob
IMO,這個問題屬於https://codereview.stackexchange.com – ayushgp