从键盘输入若干个学生的成绩,当成绩小于0时结束输入;计算出平均成绩,并输出不及格的成绩和人数。分别用嵌套循环和数组实现。

一.用for循环实现

#include<stdio.h>
int main()
{
    
    
    int x, y, i = 0, z, a = 0;//i是for外部变量意义为总人数
    int num1, num2, num3;//num1是不及格的数量,num2是及格人数,num3是总人数
    int sum1 = 0;//sum1是总成绩 
    float sum2 = 0;//sum2是平均成绩 
    printf("请输入学生成绩:\n");
    for (z = 1; z > 0;)//循环输入x的值
    {
    
    
        scanf_s("%d", &x);
        if (x >= 0 && x <= 100)
        {
    
    
            i++;//总人数
        }//这个if语句是用自增算出学生总人数
        if (x >= 0 && x < 60)
        {
    
    
            a++;//不及格人数
        }//这一步是为了用自增算出不及格学生人数
        z = x;//将x和z关联起来,当x小于0时结束外部for循环
        for (num1 = 0, num2 = 0, num3 = 0; x >= 0;)//循环判断
        {
    
    
            if (x >= 0 && x < 60)
            {
    
    
                printf("打印不及格成绩%d\n", x);
                num1++;
            }
            if (x >= 60 && x <= 100)
            {
    
    
                printf("打印及格成绩%d\n", x);
                num2++;
            }
            if (x >= 0 && x <= 100)
            {
    
    
                num3++;
            }
            for (y = 0; y < num3; y++)
            {
    
    
                sum1 = sum1 + x;//总成绩
            }
            x = -1;//跳出for循环,就是题目中给出的输出一个小于0也就是负数的时候,运行程序。
        }
    }
    if (x < 0)
    {
    
    
        sum2 = (sum1 / i);//平均成绩
    }
    printf("平均成绩%.2f\n", sum2);
    printf("总成绩%d\n", sum1);
    printf("总人数%d\n", i);
    printf("不及格人数%d\n", a);
    return 0;
}

在这里插入图片描述
用数组实现:

#include <stdio.h>
int main()
{
    
    
	int b,c,d=0,e,i,a[20];//b是总人数,c是不及格人数,d是总成绩;e是及格人数 
   float sum1=0,sum2=0;//sum1是平均成绩;sum2是总成绩 
	printf("请输入学生成绩:\n");
	
	while(i>=0)
	{
    
    
		scanf("%d",&a[i]);
		if(a[i]<0)
		break;
		if(a[i]>=0&&a[i]<60)
		{
    
    
		c++;
		printf("不及格成绩为:%d\n",a[i]);
	}
	    if(a[i]>=60&&a[i]<=100)
	    {
    
    
	    e++;
		printf("及格成绩为:%d\n",a[i]);	
		}
		b++;
		sum2+=a[i];
		sum1=(sum2/b);
	}
	if(i<0)
	{
    
    
	printf("总人数为0\n");
}
printf("不及格人数为%d\n",c);
printf("平均成绩为:%0.2f\n",sum1);
return 0;
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_68310290/article/details/124308933