将位数较多的数字看成是字符串

这是一道很贱的代码题,但是有一个新的私立,所以记录一下:

    给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123

新的思路:

 1 就是讲你输入的数字看成是字符串,这样在同样的时间里,节省了内存空间
 2 直接正序输出和倒序输出就行了。
 3 
 4 #include<stdio.h>
 5 #include<string.h>
 6 int main()
 7 {
 8     
 9     
10     char a[7];
11     int i;
12     scanf("%s",&a);
13     printf("%d\n",strlen(a));
14     for(i=0;i<strlen(a);i++)
15     {
16         if(i==(strlen(a)-1))
17         {
18             printf("%c\n",a[i]);
19         }else
20         {
21             printf("%c ",a[i]);
22         }
23     }    
24     for( i=strlen(a)-1;i>=0;i--)
25     {
26         printf("%c",a[i]);
27     }
28     printf("\n");
29     
30     
31     
32     
33     
34     return 0;
35 }

  传统的·思路。就是你申请一个数组,然后便利求长度,然后再正序和倒序输出,。我还是觉得看成字符串比较好。

将位数比较多的数字看成是字符串,记住这个思想,其实这个就是那个大数加法的思想。。。

posted @ 2017-09-29 20:23  小油菜1  阅读(267)  评论(0编辑  收藏  举报