问题:
输入一串数字,如:1 2 3 4 5 6 7 8 9
要求打印为 9 8 7 6 5 4 3 2 1
先写代码,解析在后面
1 #include <stdio.h>
2 int main()
3 {
4 int n;
5 scanf("%d", &n);
6 while (n)
7 {
8 int m;
9 m = n % 10; //取个位
10 n /= 10; //去掉个位
11 printf("%d", m);
12 }
13 return 0;
14 }
解析:(不会来砍我!)
1,基本框架就不用说了;
2,该代码运用了 while循环 要知道 while()括号里只要为真,就会一直循环下去,就是运用这巧妙的一点;
3,先输入一个数字n,while(n) 会一直循环,一个整数要想专门取它的个位就为 (整数%10 )可得到个位,如第九行,然后在除10,因为该类型为int整型,所以程序会直接舍去小数部分,如:1 2 3,取模于10得到个位 3 ,然后除以10得到 1 2,依次循环,在打印;
4,刚好整数n取完最后一位数时,n==0; while()循环结束,完成逆打印;
5,如果还有不明白的问题可以私信我,我会一一解答的;