將一個數字的各位上的數反覆疊加(C語言)
阿新 • • 發佈:2021-01-04
技術標籤:c語言
將一個數字的各位上的數反覆疊加(C語言)
如輸入38,3+8=11,1+1=2,最終輸出2.
此題比較簡單,但如果直接採用int型別,輸入的數字大小限制較大,我們在此採用字串。話不多說,程式碼如下:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
char Total_x(char num[])
{
while(1)
{
int count=strlen(num);
if(count==1)
{
return num[0];
break;
}
int result=0;
for(int j=0;j<count;j++)
{
result+=((int)(num[j])-48);
}
itoa(result,num,10);
}
}
int main()
{
char num1[100],num;
printf("輸入整數");
gets(num1);
num=Total_x(num1);
printf ("結果為%c",num);
return 0;
}
測試結果: