小明决定申请一个新的QQ号码,系统随机生成了若干个号码供他选择。小明的选号原则是:
- 选择所有号码中各位数字之和最大的号码。
- 如果有多个号码各位数字之和相同则选择数值最大的号码。
请你写一个程序帮助小明选择一个QQ号码。
输入说明
输入数据由两行构成,第一行为一个整数n表示有n个待选号码(0<n<100),第二行有n个正整数,表示各个待选的号码,每个号码长度不超过9位数。每个号码之间用空格分隔,且每个号码都不相同。
输出说明
输出根据小明的选号原则选出的号码。
输入样例
5
10000 11111 22222 333 1234
输出样例
22222
对于此题我敲出以下代码,但是运行的时候只显示最后一个数,这是出什么问题了?
#include<stdio.h>
int main()
{
int a,b,d,max=0,i,n,sum=0,num,t=0;
scanf("%d",&n);
for(i=0;i<n;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;
}