C语言经典算法100例-029-求一个整数的位数且逆序打印

这道题也很简单:利用模运算和除运算依次求出个、十、百。。。。位的值并打印,然后位数累加即可。

直接看程序:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int i;
    int digits(int);
    printf("Please input an integer!\n");
    scanf("%d",&i);
    printf("It contains %d digits!\n",digits(i));
    return 0;
}
int digits(int n)
{
    int d=0;    //包含的位数
    int t;      //各位上的值
    while(n>0)
    {
        t=n%10;
        printf("%d",t);
        n/=10;
        d++;
    }
    printf("\n");
    return d;
}


posted @ 2014-03-05 14:29  庄浩  阅读(401)  评论(0编辑  收藏  举报