c语言统计一组学生的平均成绩
1. C语言菜鸟问题(统计学生总成绩和平均分)
#include<stdio.h>
void
main()
{
int
n,i;
float
score,sum=0.0,aver;//sum
一开始来要源赋值,经常出现这种错误
printf("请输入学生人数:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
printf("请输入学生成绩:");
scanf("%f",&score);
if(score<0||score>100)//逻辑问题,一开始你的把正确的分数都过滤了
continue;
sum=score+sum;
}
printf("学生总成绩为:%f\n",sum);
aver=sum/n;
printf("学生平均成绩为:%f\n",aver);
}
2. 使用c语言编写程序,分别统计出每个学生的平均成绩。
#include<stdio.h>
#define N 5//这里设置班级人数
void main()
{
int i,sum=0,high=0,score;
float average;
printf("input everyone's score.\n");
for(i=0;i<N;i++)
{
scanf("%d",&score);
sum+=score;
if(score>high) high=score;
}
average=(float)sum/N;
printf("average=%f\n",average);
printf("highest=%d\n",high);
}
这个代码很容易懂。你拿去改下。。我就不给你调试了。这个是实现某班平均成绩然后输出平均成绩最高成绩的,如果采纳我的。我可以给你编一个很通用的
3. 编程C语言 输入n个学生成绩,计算他们的平均值并输出所有高于平均的学生成绩。 求解 !!
1 指针来
#include<stdio.h>
#define N 10
main()
{int i,num=0,max=0;float s=0,v,score[N],*p;
for(p=score,i=0;i<N;i++)
{scanf("%f",p+i);
if(*(p+i)>=score[max])
max=i;
s+=*(p+i);
}
v=s/N;
for(p=score,i=0;i<N;i++)
if(*(p+i)>v)
num++;
printf("average=%.1f,num=%d,%.1f\n",v,num,score[max]);
}
2.
#include<stdio.h>
#define N 10
main()
{int i,max=0,g=0,s=0,a[N];double v;
for(i=0;i<N;i++)
{scanf("%d",a+i);s=s+a[i];if(a[i]>=a[max])max=i;}
v=s/N;
for(i=1;i<=N;i++)
if(a[i]>v)
g++;
printf("大于自平均成绩%.2lf有%d人其中最高分%d",v,g,a[max]);
}
4. C语言 计算每门课的平均成绩和每个学生的平均成绩
#include<stdio.h>
#include<stdlib.h>
#defineN2//输入学生的个数
structStudent
{
intsno;//学号
charsname[50];//姓名
intcourse1;//课程1
intcourse2;//课程2
intcourse3;//课程3
};
voidmain()
{
structStudentstu[N];
intindex;
intsum=0;
//输入学生信息
printf("输入学生情况(输入的时候按Tab健隔开): ");
printf("学号 姓名 课程1 课程2 课程3 ");
for(index=0;index<N;index++)
{
("%d %s %d %d %d",&stu[index].sno,&stu[index].sname,&stu[index].course1,&stu[index].course2,&stu[index].course3);
}
//打印单科结果
printf("输出单科结果 ");
for(index=0;index<N;index++)
{
sum+=stu[index].course1;
}
printf("课程1平均分:%d ",sum/N);
sum=0;
for(index=0;index<N;index++)
{
sum+=stu[index].course2;
}
printf("课程2平均分:%d ",sum/N);
sum=0;
for(index=0;index<N;index++)
{
sum+=stu[index].course3;
}
printf("课程3平均分:%d ",sum/N);
//打印学生平均分
printf("输出学生的结果: ");
for(index=0;index<N;index++)
{
printf("%s的平均分:%d ",stu[index].sname,(stu[index].course1+stu[index].course2+stu[index].course3)/3);
}
}
5. C语言程序,请你编写一个程序计算每个学生的平均成绩
#include<stdio.h>
void main()
{
float a[10][10];//用来存放10名学生的5门成绩,最后一位用于存放平均成绩
int i,j;
float sum=0.0;
for(i=0;i<10;i++)
{
printf("请输入第%d个学生的5门成绩",i+1);
for(j=0;j<5;j++)
{
scanf("%f",&a<i>[j]);
sum=sum+a<i>[j];
}
a<i>[10]=sum/5.0;
}
printf("10名学生的成绩及平均分 ");
for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
printf("%.3f",a<i>[j]);
printf(" ");
}
}
(5)c语言统计一组学生的平均成绩扩展阅读:
printf的用法
格式
printf函数的原型为:
#include<stdio.h>
int printf(const char*format,...);
在讲每一个函数的时候都会先把它的函数原型写出来,这个原型你们现在看不懂不要紧,等到学完C语言之后再来看这个原型就会发现它是很有参考意义的!它对深刻理解函数有着很大的价值。
printf的格式有四种:
1)printf("字符串 ");
#include<stdio.h>
int main(void)
{
printf("Hello World! ");// 表示换行
return 0;
}
其中 表示换行的意思。它是一个转义字符,前面在讲字符常量的时候见过。其中n是“new line”的缩写,即“新的一行”。
此外需要注意的是,printf中的双引号和后面的分号必须是在英文输入法下。双引号内的字符串可以是英文,也可以是中文。
2)printf("输出控制符",输出参数);
纯文本复制
#include<stdio.h>
int main(void)
{
int i=10;
printf("%d ",i);/*%d是输出控制符,d表示十进制,后面的i是输出参数*/
return 0;
}
6. C语言编写函数,求10个学生的平均成绩,使用数组
1、首先打开visual studio 2019软件,新建一个win32控制台程序。
7. 【C语言】计算10个学生的平均成绩
#include <stdio.h>
int main()
{ int i,x,s=0;
for(i=0; i<10; i++)
{ scanf("%d",&x);
s+=x;
}
printf("%.1f\n",s/10.0);
return 0;
}
8. c语言:输入10个学生的成绩,求学生的平均成绩,并统计超过平均分数的学生人数
#include <stdio.h>
#include <malloc.h>
int max,min,k=0; float aver=0;
void f(int *p1,int *p0,int n)
{
i;p1=p0; float s=0;
for(i=0;i<n;i++) s+=*p1++;
aver=s/n;
max=0;min=100;p1=p0;
for(i=0;i<n;i++) {if(*p1>max) max=*p1;p1++;} p1=p0;
for(i=0;i<n;i++) {if(*p1<min) min=*p1;p1++;} p1=p0;
for(i=0;i<n;i++) {if(*p1>aver) k++ ;p1++;} p1=p0;
}
void main()
{
int *p,n,i;
printf("请输入班级总人数:\n") ;
scanf("%d",&n);
p=(int*)malloc(n*sizeof(int));
if(!p) return;
int *p0;p0=p;
printf("请在此输入各学生成绩:\n");
for(i=0;i<n;i++) scanf("%d",p++);
f(p,p0,n);
printf("平均分数:%3f\n",aver);
printf("最高分:%3d\n",max);
printf("最低分:%3d\n",min);
printf("超过平均分的人数:%3d\n",k);
free(p);
}
9. C语言编程题:从键盘输入10个学生的成绩,计算平均成绩,统计及格人数,计算高于平均分的学生的分数
如果需要改进可以来hi我~
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
int a[10];
int m=0;
float aver;
aver=0.0;
cout<<"请输入自10个学生的成绩"<<endl;
for(int i=0;i<10;i++)
{
cin>>a[i];
aver+=a[i];
}
aver/=10;
cout<<"平均数为"<<aver<<endl<<endl;
cout<<"高于平均分的学生的分数:"<<endl;
for(i=1;i<10;i++)
{
if(a[i]>60)
m++;
if(a[i]-aver>0)
cout<<"第"<<i<<"个学生:"<<a[i]<<endl;
}
cout<<endl;
cout<<"及格人数:"<<m<<endl<<endl;
return 0;
}
10. C语言 计算5个学生的成绩,总成绩和平均成绩,输入最大值和最小值.
#include <stdio.h>
int main()
{
int i;
float score[5],all = 0,avg = 0;
printf("请输入这五位学生的成绩:
");
for(i = 0; i < 5; i++)
scanf("%f",&score[i]);
float max=score[0],min=score[0];
for(i = 0; i < 5; i++)
{
all += score[i];
if(score[i]>max)
max = score[i];
if(score[i]<min)
min = score[i];
}
avg=all/5;
printf("总成绩:%g
平均成绩:%3.2f
最大值:%g
最小值:%g
",all,avg,max,min)
return 0;
}
/* %g是自动简化输出版,省略后权面的0 */
经过调试 没有有问题
运行如下