此程序可通過以下步驟實現:
1、輸入壹個正整數
2、將整數轉換為字符串(使用sprintf函數)
3、求字符串的長度(strlen函數),即正整數的位數
代碼如下:
#include?<stdio.h>#include?<string.h>
int?main()
{
long?num;
char?str[20];
scanf("%ld",?&num);
sprintf(str,?"%ld",?num);
printf("%d",?strlen(str));
return?0;
}
這樣寫主要是考慮到整數的前面可能有0,比如:00090,是兩位數。如果確認沒有前置0的話,可以簡化過程,省去轉換為字符串的過程,直接用gets得到字符串。