#include <stdio.h>
#include <string.h>
int main()
{
int i, len;
char num[100];
printf("請輸入一個整數:");
scanf("%s", num);
len = strlen(num);
for (i = 0; i <= len - 1; i++)
{
printf("%c\n", num[i]);
}
if (num[0] != 45)//45表示“-”的ASCII值
{
printf("位數為:%d\n", len);
}
else
{
len=len - 1;
printf("位數為:%d\n", len);
}
return 0;
}
結果1: 請輸入一個整數:72356 7 2 3 5 6 位數為:5 請按任意鍵繼續. . . 結果2: 請輸入一個整數:-2378 - 2 3 7 8 位數為:4 請按任意鍵繼續. . . 方法二: 程序:
#include<stdio.h>
int main()
{
int num = 0;
printf("請輸入一個非負整數:");
scanf("%d", &num);
while (num)
{
printf("%d\t",num%10);
num /= 10;
}
return 0;
}
結果: 請輸入一個非負整數:987 7 8 9 請按任意鍵繼續. . . 方法三: 程序:
#include <stdio.h>
int print(int num)//遞歸實現
{
if (num > 9)
{
print(num/10);
}
printf("%d\t", num % 10);
}
int main()
{
int num = 0;
printf("請輸入一個整數:");
scanf("%d", &num);
print(num);
return 0;
}
結果: 請輸入一個整數:87654 8 7 6 5 4 請按任意鍵繼續. . .