如何用循环结构做出下列程序

编程:找出若干个非零数中的最小值m以及它们的平均值
要求:若干个数由键盘输入,每输入一个赋给变量x,x为零时,结束输入

循环输入整数,判断为0就结束,否则进行累加并记录数量,最后相除

#include<stdio.h>
int main()
{
    int m,total = 0,n=0,d;
    scanf("%d",&d);
    while(d != 0)
    {
        if(n == 0 || m > d)
              m = d;
        total += d;
        n++;
        scanf("%d",&d);
    }
    printf("最小值为:%d,平均值为:%.1f",m,total*1.0/n);
    return 0;
}


#include<iostream>
using namespace std;
int main()
{
    int n,sum=0,count=0,mix;
    cin>>n;
    mix=n;
    while(n!=0){
        sum+=n;
        count++;
        cin>>n;
        if(n<mix&&n!=0)    mix=n;
    }
    cout<<mix<<endl<<sum/count<<endl;
} 

一个实现:


#include <stdio.h>

int main(void){
    
    int x;
    int num=0;
    float sum=0;
    int min;
    
    printf("请输入一个整数(输入0退出):"); 
    scanf("%d",&x);
    min=x;
    
    while(x!=0){
        num++;    
        if(min>x){
            min=x;
        }
        
        sum+=x;
        printf("请输入一个整数(输入0退出):"); 
        scanf("%d",&x);
        
        
    }
    
    if(num!=0){
        printf("最小值为%d,平均值为:%.2f\n",min,sum/num);
    }
    
    return 0;
} 
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632