1. 程式人生 > >給出一個不多於5位的正整數,(1) 求出它是幾位數(2) 分別打印出每一位數字(3) 按逆序打印出各位數字,例如原數為321,應輸出123

給出一個不多於5位的正整數,(1) 求出它是幾位數(2) 分別打印出每一位數字(3) 按逆序打印出各位數字,例如原數為321,應輸出123

1、         給出一個不多於5位的正整數,要求:

(1)    求出它是幾位數;

(2)    分別打印出每一位數字;

(3)    按逆序打印出各位數字,例如原數為321,應輸出123.

 #include <stdio.h>
int main()
{
int n,i,a;
  int temp; printf("請輸入一個不多於五位的正整數:\n");
    scanf("%d",&n);
    temp=n;  //記住輸入的值
    if (n<10) {
     i=1;
     a=1;
    }
    if (n>=10&&n<99){
      i=2;
      a=10;
    }
    if (n>=100&&n<999){
      i=3;
      a=100;
    }
    if (n>=1000&&n<9999) {
     i=4;
     a=1000;
    }
    if (n>=10000&&n<99999){
      i=5;
      a=10000;
    }
    printf("這是一個%d位數\n",i);
        while (n){
         printf("%d",n/a);
         n=n%a;
         a=a/10;
         } 
    printf("\n");   
    printf("逆序列印:\n");
    while (temp){
     printf("%d",temp%10);
     temp=temp/10;
    }
return 0;
}