题目:给一个不低于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
1234567891011121314151617181920212223242526272829303132 | int Cal_Digit(int input){ int digit = 0; while (input>0) { input = input / 10;//每次除10,digit+1,直到input等于0为止 digit++; } return digit;} void Reverse_Print(int input,int digit){ printf("逆序后:"); for (; digit>0; digit--) { int Last_Nun = input%10;//找到最后一位数 printf("%d",Last_Nun); input = input / 10;//除以10,舍弃最后一位数,得到新的数 } printf("\n");} int main() { int input; scanf("%d",&input); int digit = Cal_Digit(input);//计算数字的位数 printf("这个数字是 %d 位数\n",digit); Reverse_Print(input,digit);//逆序打印 return 0;} |