从键盘连续输入一组数,对每一个数按位求和,输出和数最大者
在total函数中定义一个静态局部便变量,每一次记录当前和数和上一次和数的较大者
#include<stdio.h>
int total(int n)
{
int t=0;
static int bigger; //静态局部变量默认初始值是0
while(n!=0)
{
t=t+n%10;
n=n/10;
}
bigger=t>bigger?t:bigger; //记录当前和数和上一次合数的较大者
return bigger;
}
int main()
{
int x,n;
while(1) //无条件循环语句。需要break语句结束循环
{
printf("请输入一个正数(输0退出):"); //输入提示
scanf("%d",&n);
if(n!=0) //如果输入不为0
x=total(n);
else //如果输入等于0
break; //输入完毕
}
printf("%d\n",x);
return 0;
}