用简单的C语言(刚学不久)编写程序:输入一个整数,求它的位数和各位数字之和

如题所述

#include <stdio.h>
#include <string.h>
int main()
{
    long int n;
    char ch[20];
    int i,len,sum=0;
    scanf("%ld",&n);
    if(n<0)
        n=-n;
    sprintf(ch,"%ld",n);
    len=strlen(ch);
    for(i=0;i<len;i++)
        sum+=ch[i]-'0';
    printf("%d是一个%d位数的整数\n",n,len);
    printf("各位数的和= %d\n",sum);
    return 0;
}

示例运行结果:

12345678

12345678是一个8位数的整数

各位数的和= 36

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-11-01
#include<stdio.h>
int main() {
int i, sum = 0, len = 1;
scanf("%d", &i);

while(i/10 != 0) {
sum += i%10;
len++;
i = i/10;
}
sum+=i%10;

printf("位数:%d,各位之和:%d\n", len, sum);
return 0;
}
相似回答