7-3 逆序的三位数 (10 分),用数组来写

程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。

输入格式:

每个测试是一个3位的正整数。

输出格式:

输出按位逆序的数。

输入样例:

123

输出:321

  

        #include <stdio.h>
        int main ()
        { 
    int N,n,num;//N是正序数,num是倒叙数
    scanf("%d",&N);
    n=N;
    int i,m;
    int a[3]={0};
    for (i=0;i<3;i++) 
    { 
    m=n%10;
    int b=0;
    while(b<m)//使数组存上数,a[0]存个位,a[1]百位,a[3]千位 
    {
    a[i]++;
    b++; 
    }
    n=n/10;//和 m=n%10;相配合推进位数,除一次进一位 
    }
    num=a[0]*100+a[1]*10+a[2];//形成倒叙数
    printf("%d",num);
	return 0;		
}

思考:原来想用循环输出数组的数,结果700没办法转到7,输出都是007,外面用了一个for(3次),当a[0],a[1]都为0的时候只输出a[3].结果不得,就算是因为for的原因输出三次也应该是777,不知道怎么出来是007,最后还是用这种最简单的方法就能完美解决了。

上一篇:700题复习计划


下一篇:下半年财富密码都在这张图里了