作业帮 > 综合 > 作业

c语言,输入一个数,求其中偶数的个数已经出现的频率和最大的偶数

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/27 21:05:39
c语言,输入一个数,求其中偶数的个数已经出现的频率和最大的偶数
比如输入一个 10201301203468
这个数里有5个偶数(分别是02468)
输出格式是
偶数个数:5
最大的偶数:8
最小的偶数:0
最大偶数的频率:1
最小偶数的频率:4
要求用c语言做,但是不能嵌套3个以上的循环,这个是重点
3个以上的循环的意思是,
for(;;)
{for(;;)
{for(;;){}}}
这样的不可以.求解有人能帮助下么,谢谢了,初学者,不慎感激.
#include<stdio.h>
int min(int a,int b){return (a<b?a:b);}
int max(int a,int b){return (a>b?a:b);}
char a[10000];
int mi=10,ma=-1,all=0;
int p[10];
int main(){
    scanf("%s", a);
    for(int i=0;i<strlen(a);i++){
        p[a[i]-'0']++;
        mi=min(mi,a[i]-'0');
        ma=max(ma,a[i]-'0');
    }
    for(int i=0;i<10;i+=2) if (p[i]) all++;
    printf("偶数个数:%d\n", all);
    printf("最大的偶数:%d\n", ma);
    printf("最小的偶数:%d\n", mi);
    printf("最大偶数的频率:%d\n", p[ma]);
    printf("最小偶数的频率:%d\n", p[mi]);
    return 0;
}