标题:怎麼求一個數是幾位數並求每一位上的數的和。
只看楼主
DoubleJ
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2006-3-23
 问题点数:0 回复次数:2 
怎麼求一個數是幾位數並求每一位上的數的和。

然後把每一位上的數求和。
如我輸入45678,
輸出:5 和為:30
輸入:456,
輸出:3 和為:15
謝謝。。
我是菜鳥,麻煩寫一下注解。
再次謝謝。

[此贴子已经被作者于2006-4-1 12:15:44编辑过]

搜索更多相关主题的帖子: 麻煩寫 注解 求和 
2006-04-01 12:15
abingchem
Rank: 6Rank: 6
等 级:贵宾
威 望:24
帖 子:716
专家分:0
注 册:2004-12-30
得分:0 
这样的程序很多啊,你可以在论坛里搜搜

此人已消失
2006-04-01 12:50
baifenghan
Rank: 8Rank: 8
等 级:贵宾
威 望:10
帖 子:258
专家分:952
注 册:2006-3-17
得分:0 
[分享]答案

int Bit(int a) /*求一个数a是几位数*/
{int i=0;
while(a!=0)
{a/=10;i++;}
return i;
}

void Gws(int a,int *p,int i) /*求一个数a的各位上的数。xx指向一个数组,i是这个数的位数。*/
{int j;
for(j=0;j<i;j++)
{*(p+j)=a%10;a=a/10;}
}


main()
{int i,n,num,sum=0,*s;
printf("Enter the number:\n");
scanf("%d",&n);
num=Bit(n);
printf("The bits is %d\n",num);
s=(int*)malloc(num*(sizeof(i))); /*分配一个空间存储各位数*/
Gws(n,s,num);
for(i=0;i<num;i++)
{sum=sum+*(s+i); printf("%d\n",*(s+i));}
printf("The sum is %d\n",sum);
}
已经运行过了,自己再想想。

2006-04-01 13:46



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-54346-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.892919 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved