用c语言输入100个学生的成绩求平均值 最低分及格率

如题所述

把100分定为最高分,60分为及格分数线。用C语言实现如下:

#include 

#define N 100

void main()

{

int i;

float grade,sum=0,min=100,pass=0;

for(i=0;i {

scanf("%f",&grade);//输入学生分数。

sum+=grade;//计算学生的成绩的总和。

if (grade if (grade>=60) pass++;  //求及格人数。

}

printf("%0.2f\n",sum/N);

//保留两位小数输出100个学生的成绩的平均值

printf("%0.2f\n",min);//保留两位小数输出最低分。

printf("%0.2f%%\n",pass/N*100);//保留两位小数输出及格率。

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-01-09

这里我就把100分定为最高分,60分为及格分数线。

C语言实现如下:

#include <stdio.h>
#define N 100
void main()
{
int i;
float grade,sum=0,min=100,pass=0;
for(i=0;i<N;i++)
{
scanf("%f",&grade);//输入学生分数。
sum+=grade;//计算学生的成绩的总和。
if (grade<min) min=grade;  //求最低分。
if (grade>=60) pass++;  //求及格人数。
}
printf("%0.2f\n",sum/N);
//保留两位小数输出100个学生的成绩的平均值。
printf("%0.2f\n",min);//保留两位小数输出最低分。
printf("%0.2f%%\n",pass/N*100);//保留两位小数输出及格率。
}

第2个回答  2018-02-03
#include<stdio.h>
int main()
{
int sum=0,min=1000,jg=0,i,a[100];
for(i=0;i<100;i++)
{
printf("第%d个学生的成绩:",i); //若不需要提示可将此行删除
scanf("%d",&a[i]);
sum+=a[i];
if(a[i]<min)min=a[i];
if(a[i]>=60)jg++;
}
printf("平均分=%.2f\n最低分=%d\n及格率=%d%%\n",sum/100.0,min,jg);
system("pause");
return 0;
}
第3个回答  推荐于2018-03-13
#include<stdio.h>
int main()
{
int sum=0,min=1000,jg=0,i,a[100];
for(i=0;i<100;i++)
{
printf("第%d个学生的成绩:",i); //若不需要提示可将此行删除
scanf("%d",&a[i]);
sum+=a[i];
if(a[i]<min)min=a[i];
if(a[i]>=60)jg++;
}
printf("平均分=%.2f\n最低分=%d\n及格率=%d%%\n",sum/100.0,min,jg);
system("pause");
return 0;
}本回答被提问者和网友采纳
第4个回答  2015-06-24
#include<stdio.h>
using namespace std;

int main(){
int stu=100;
int index =0;//学生数
float sum=0;//总分
float score=0;
float average =0;//平均分 
float pass=0;//及格率 
float min =0;

while(index<stu) {
printf("\nInput NO %d score: ",index);
scanf("%f",&score);
sum +=score;
if(score>=60)
pass++;
if(index==0)
min=score;
if(min>score)
min =score; 
index++;
}

average = sum/stu;
pass = pass/stu;

printf("\nMin: %3.2f, Average: %3.2f,Pass: %3.2f",min,average,pass);
}

相似回答