#include<stdio.h>
#include<windows.h>
//以下为正确程序
void test1()
{
float score, sum = 0, average;
int n, i;
printf("请依次输入每一个班级所以学生成绩:输入分数完成请输入一个负数截至运行程序\n");
for(i = 1; i < 31; i++)
{
scanf("%f", &score);
if(score < 0) break;
sum = sum + score;
}
n = i - 1;
average = sum / n;
printf("全班级总分数为:%f,学生共%d人\n", sum, n);
printf("班级平均成绩为:%f\n", average);
}
//尝试输入OVER截至程序,报错,依然运算了30次
void test2()
{
float score, sum = 0, average;
int n, i;
static char str[4] = "over";
printf("请依次输入每一个班级所以学生成绩:输入分数完成请输入一个负数截至运行程序\n");
for(i = 1; i < 31; i++)
{
scanf("%f", &score);
if(score < 0) break;
sum = sum + score;
if(score == str[4]) break;
}
n = i - 1;
average = sum / n;
printf("全班级总分数为:%f,学生共%d人\n", sum, n);
printf("班级平均成绩为:%f\n", average);
}
//尝试输入OVER截至程序,报错,依然运算了30次
void test3()
{
float score, sum = 0, average;
int n, i;
static char over[4] = {'o', 'v', 'e', 'r'};
printf("请依次输入每一个班级所以学生成绩:输入分数完成请输入一个负数截至运行程序\n");
for(i = 1; i < 31; i++)
{
scanf("%f", &score);
if(score < 0) break;
if(score == over[4]) break;
sum = sum + score;
}
n = i - 1;
average = sum / n;
printf("全班级总分数为:%f,学生共%d人\n", sum, n);
printf("班级平均成绩为:%f\n", average);
}
void main()
{
test1();
test2();
test3();
system("pause");
}