小明决定申请一个新的QQ号码,系统随机生成了若干个号码供他选择。小明的选号原则是:
输入说明
输入数据由两行构成,第一行为一个整数n表示有n个待选号码(0
输出说明
输出根据小明的选号原则选出的号码。
输入样例
5
10000 11111 22222 333 1234
输出样例
22222
对于此题我敲出以下代码,但是运行的时候只显示最后一个数,这是出什么问题了?
#include
int main()
{
int a,b,d,max=0,i,n,sum=0,num,t=0;
scanf("%d",&n);
for(i=0;i
{
scanf("%d",&num);
a=num;
while(a!=0)
{b=a%10;
sum+=b;
a=(a-b)/10;}
if(sum>t)
{t=sum;max=num;}
else if(sum==t)
{
if (num>max)
{
max=num;
}
}
}
printf("%d",max);
return 0;
}
循环里sum不清零,那必然是最后一个数sum最大呀,它单调递增呀
sum没有清零
for(i=0;i<n;i++)
{
scanf("%d",&num);
a=num;
sum=0;//sum清零
while(a!=0)