. c语言编程:输入一个正整数,统计该数的各位数字中零的个数,并求各位数字中的最大者。

如题所述

#include <stdio.h>

int main()

{

int n,t,count=0,max=0;

printf("请输入正整数n: ");

scanf("%d",&n);

while(n)

{

t=n%10;

if(t==0)

count++;

else if(t>max)

max=t;

n=n/10;

}

printf("count=%d,max=%d\n",count,max);

return 0;

}

count:0的个数。

max:各位数字中的最大者

扩展资料:

while 循环的格式是:

while (表达式)
{
语句;
}

当表达式为真,则执行下面的语句;语句执行完之后再判断表达式是否为真,如果为真,再次执行下面的语句;然后再判断表达式是否为真……就这样一直循环下去,直到表达式为假,跳出循环。这个就是 while 的执行顺序。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-03-30
#include<stdio.h>
int main()
{
int n,max=-1,s=0;
scanf("%d",&n);
while(n)
{
if(n%10==0)s++;
if(n%10>max)max=n%10;
n/=10;
}
printf("0:%d\nmax=%d\n",s,max);
return 0;
}

本回答被提问者采纳
第2个回答  2014-03-30
首先查看是多少位的。在将每一位提取出来。存入int 数组中。后面循环比大小和统计零的个数
相似回答