从键盘得到一个数,要求写函数完成功能如下:让这个数的每个位上的数相加,如果结果为>10,再来一次。。。e.g:输入:456,应该输出:6 (4+5+6=15,1+5=6)。 #include < stdio.h > #include < string .h > int calc( int num);main() ... { int i,j,result; int num; printf("Please input a number! "); scanf("%d",&num); result=calc(num); if(result>9) result=calc(result); /**//*递归调用calc*/ printf(" The result is: %d",result); return 0;} int calc( int num) ... { int i; int count,result=0; char temp[20]; i=num; sprintf(temp,"%d",i);/**//*将num按位读入temp[20]*/ count=strlen(temp); /**//*取得输入数的实际位数*/ for(i=0;i<count;i++) result+=(temp[i]-'0'); return result;} /**/ /*在Turbo c2.0下编译通过,Crazy7 2006-12-16*/