calc the sum
要放那么大的数字要用字符串,用一个递归就行。
#include<stdio.h>
#include<string.h>
int main()
{
int calc(int n);
int a;
//printf("dsfsf");
scanf("%d", &a);
char num[1000002];
//printf("%d",a);
int out;
int i;
int count;
while(a--)
{
count=0;
//memset(num,'\0',sizeof(num));
scanf("%s",num);
i=0;
while(num[i]!='\0')
{
count+=num[i]-'0';
i++;
}
//printf(" %d",count);
out=calc(count);
printf("%d\n",out);
}
return 0;
}
int calc(int n)
{
if (n< 10)
return n;
else
{
int x = 0;
int k = n;
while(k)
{
x += k % 10;
k = k / 10;
}
return calc(x);
}
}
posted on 2019-01-09 22:05 Gavinthoms 阅读(...) 评论(...) 编辑 收藏