如何获得单数字的O / P? [英] How Do I Get The O/P In Single Digit?
本文介绍了如何获得单数字的O / P?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
#include< stdio.h>
int dob(int num);
main()
{
int num,c;
printf(输入数字);
scanf(%d,& num);
printf(数字之和为%d,dob(num));
返回0;
}
int dob(int num)
{
int temp = 0,c;
if(num> 10)
{
temp = num%10;
num = num / 10;
返回temp +(dob(num));
}
}
解决方案
您是否正在尝试计算num
递归?
如果是这样的话,这样的事可能适合你;
< pre lang =c> #include < < span class =code-leadattribute> stdio.h >
int dob( int num);
int calc( int num);
int main(){
int num,c;
printf( 输入数字);
scanf( %d,& num);
printf( 数字之和为%d,calc(num)) ;
return 0 ;
}
int calc( int num){
int sum = num;
做 {
sum = dob(sum);
} while (sum> 9 );
return sum;
}
int dob( int num){
if (num< 10 )
return num;
else
return dob(num / 10 )+ dob(num% 10 );
}
希望这会有所帮助,
Fredrik
#include<stdio.h>
int dob(int num);
main()
{
int num,c;
printf("enter the number ");
scanf("%d",&num);
printf("the sum of the digits is %d",dob(num));
return 0;
}
int dob(int num)
{
int temp=0,c;
if(num>10)
{
temp=num%10;
num=num/10;
return temp+(dob(num));
}
}
解决方案
Are you trying to calculate the sum of the digits innum
recursively?
If that is the case, something like this might work for you;
#include<stdio.h> int dob(int num); int calc(int num); int main() { int num, c; printf("enter the number "); scanf("%d", &num); printf("the sum of the digits is %d", calc(num)); return 0; } int calc(int num) { int sum = num; do { sum = dob(sum); } while (sum > 9); return sum; } int dob(int num) { if (num < 10) return num; else return dob(num / 10) + dob(num % 10); }
Hope this helps,
Fredrik
这篇关于如何获得单数字的O / P?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文