c语言编程:输入一个很大的整数n(n<100),输出n各位数字之和 ,利用字符串实现

如题所述

思路:输入字符串,从字符串的第一个位置开始依次把每个数字字符转成整数,并计算其累加和。

参考代码:

#include "stdio.h" 
#include "string.h" 
int main() {
char a[100];
int i,sum=0;
gets(a);
   for(i=0;a[i]!='\0';i++)//遍历求累加和 
   sum+=a[i]-'0';
printf("%d\n",sum);
return 0;
}
/*
运行结果:
12345
15
*/
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-04-10
#include<stdio.h>
int main()
{
char str[100]="";
int i,n=0;
scanf("%s",str);
for(i=0;str[i];i++)
{
n+=str[i]-48;
}
printf("%d\n",n);
return 0;
}

第2个回答  2014-04-10

代码如下,n值我没限制可以是任意值

 #include <stdio.h>
#include <string.h>
#define N 100
int main(void)
{
 char buf[N]={0};
 int len,i,sum=0;
 printf("please input number:");
 scanf("%s",buf);

 len = strlen(buf);//求出长度
 for(i=0;i<len;i++)
 {
  sum = sum + buf[i]-48;//每一位转换成整数后相加
 }
 printf("sum = %d\n",sum);
 return 0;
}

第3个回答  推荐于2016-07-27
#include<stdio.h>
void main()
{ char c;
int sum=0;
while ( (c=getchar())!='\n' ) { if ( c>='0' && c<='9' ) sum+=(c-'0'); }
printf("%d\n",sum);
}本回答被提问者和网友采纳
相似回答