当前位置:首页 » 编程语言 » 求平均成绩和优秀率c语言
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

求平均成绩和优秀率c语言

发布时间: 2022-09-22 19:58:42

A. c语言 求平均数 优秀率 急急急!!!

我很久没用过C了
总之利用循环
#include
<stdio.h>
#include
<stdlib.h>
main()
{
int
a
=
0;
int
q,
w,
e,
r,
t,
y;
long
sum,b;
int
c
=
0;
scanf("请输入第%d",c++);
scanf("位同学6门考分\n");
for(a;
a<5;
a++)
{
scanf("%d%d%d%d%d%d",&q,&w,&e,&r,&t,&y);
b
=
(long)q+w+e+r+t+y;
sum
=
sum
+
b;
}
printf("总分为%d",sum);
sum=sum/50;
printf("平均分%d",sum);
sum=sum/100;
printf("优秀率%d",sum);
}
你试试
我这没法试
错了就错了,你可以不给分,好久没写这个了

B. 用c语言如何输入100个学生的成绩并且求平均值和最低分及格率

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

C. c语言 输入n个同学的某门课程成绩编写函数计算平均分及优秀(90分以上)的人数

#include<stdio.h>
#include<stdlib.h>
#defineN100
intmain()
{
intgrade[N];
intnumber,average,total=0,count=0;
printf("请确定学生人数: ");
scanf("%d",&number);
printf("请输入%d个学生的成绩: ",number);
for(inti=0;i<number;i++)
{
printf("number%d: ",i+1);
scanf("%d",&grade[i]);
}
for(intj=0;j<number;j++)
{
total+=grade[j];
}
average=total/number;
printf("计算所得平均成绩为:%d ",average);
for(intk=0;k<number;k++)
{
if(grade[k]>90)
count++;
}
printf("成绩在90分以上的人数是:%d ",count);
return0;
}

D. C语言程序,请你编写一个程序计算每个学生的平均成绩

#include&lt;stdio.h&gt;

void main()

{

float a[10][10];//用来存放10名学生的5门成绩,最后一位用于存放平均成绩

int i,j;

float sum=0.0;

for(i=0;i&lt;10;i++)

{

printf("请输入第%d个学生的5门成绩",i+1);

for(j=0;j&lt;5;j++)

{

scanf("%f",&a&lt;i&gt;[j]);

sum=sum+a&lt;i&gt;[j];

}

a&lt;i&gt;[10]=sum/5.0;

}

printf("10名学生的成绩及平均分 ");

for(i=0;i&lt;10;i++)

{

for(j=0;j&lt;10;j++)

printf("%.3f",a&lt;i&gt;[j]);

printf(" ");

}

}

(4)求平均成绩和优秀率c语言扩展阅读:

printf的用法

格式

printf函数的原型为:

#include&lt;stdio.h&gt;

int printf(const char*format,...);

在讲每一个函数的时候都会先把它的函数原型写出来,这个原型你们现在看不懂不要紧,等到学完C语言之后再来看这个原型就会发现它是很有参考意义的!它对深刻理解函数有着很大的价值。

printf的格式有四种:

1)printf("字符串 ");

#include&lt;stdio.h&gt;

int main(void)

{

printf("Hello World! ");// 表示换行

return 0;

}

其中 表示换行的意思。它是一个转义字符,前面在讲字符常量的时候见过。其中n是“new line”的缩写,即“新的一行”。

此外需要注意的是,printf中的双引号和后面的分号必须是在英文输入法下。双引号内的字符串可以是英文,也可以是中文。

2)printf("输出控制符",输出参数);

纯文本复制

#include&lt;stdio.h&gt;

int main(void)

{

int i=10;

printf("%d ",i);/*%d是输出控制符,d表示十进制,后面的i是输出参数*/

return 0;

}

E. 用c语言编写求平均成绩

#include<stdio.h>
#include<stdlib.h>
#include<string.h>struct
record
{
char
xuehao[10];//学号
char
name[20];
//姓名
char
sex[3];//性别
int
ke1;//数学
int
ke2
;//语文
int
ke3;//英语
int
pin;
}stu[50];
int
k=1,n,m;void
readfile();
void
seek();
void
insert();
void
del();
void
save();
void
menu();

void
seek()
{int
i,j,item,flag;char
s1[20];printf("------------------\n");printf("1.按学号查询\n");printf("2.退出本菜单\n");printf("------------------\n");while(1){
printf("请选择子菜单编号:");scanf("%d",&item);flag=0;switch(item){case
1:printf("请输入要查询的学生的学号:\n");scanf("%s",s1);for(i=0;i<n;i++)if(strcmp(stu[i].xuehao,s1)==0){
flag=1;printf("该学生学号,姓名,性别,数学,语文,英语
分别为:\n");printf("
%s
%s
%s
%d
%d
%d",stu[i].xuehao,stu[i].name,stu[i].sex,stu[i].ke1,stu[i].ke2,stu[i].ke3);}
if(flag==0)
printf("该学号不存在!\n");
break;
case
2:return;
default:printf("请在1-2之间选择\n");
}
}
}
void
insert()
{
int
i=n,j,flag;
printf("请输入待增加的学生数:\n");
scanf("%d",&m);
do
{
flag=1;
while(flag)
{
flag=0;
printf("请输入第
%d
个学生的学号:\n",i+1);
scanf("%s",stu[i].xuehao);
for(j=0;j<i;j++)
if(strcmp(stu[i].xuehao,stu[j].xuehao)==0)
{
printf("已有该学号,请检查后重新录入!\n");
flag=1;
break;
}
}
printf("请输入第
%d
个学生的姓名:",i+1);
scanf("%s",stu[i].name);
printf("\n请输入第
%d
个学生的性别:",i+1);
scanf("%s",stu[i].sex);
printf("\n请输入第
%d
个学生的数学成绩:",i+1);
scanf("%d",&stu[i].ke1);
printf("\n请输入第
%d
个学生的语文成绩:",i+1);
scanf("%d",&stu[i].ke2);
printf("\n请输入第
%d
个学生的英语成绩:",i+1);
scanf("%d",&stu[i].ke3);if(flag==0)
{
i=i;
i++;
}
}while(i<n+m);
n+=m;
printf("录入完毕!\n\n");
}void
del()
{
int
i,j,flag=0;
char
s1[20];
printf("请输入要删除学生的学号:\n");
scanf("%s",s1);
for(i=0;i<n;i++)
if(strcmp(stu[i].xuehao,s1)==0)
{
flag=1;
for(j=i;j<n-1;j++)
stu[j]=stu[j+1];
}
if(flag==0)
printf("该学号不存在!\n");
if(flag==1)
{
printf("删除成功,显示结果请选择菜单6\n");
n--;
}
}
void
readfile()
{
char
buf[80],*p="student.dat";
FILE
*fp;
int
i=0;
if
((fp=fopen("student.dat","r"))==NULL)
{
printf("Open
file
%s
error!
Strike
any
key
to
exit!",p);
system("pause");
exit(0);
}
while(fscanf(fp,"%s%s%s%d%d%d",stu[i].xuehao,stu[i].name,
stu[i].sex,&stu[i].ke1,&stu[i].ke2,&stu[i].ke3)==6)
{
i++;
i=i;
}
fclose(fp);
n=i;
printf("录入完毕!\n");
}void
save()
{
int
i,j,k,flag=0;
FILE
*fp;
fp=fopen("student.dat","w");
for(i=0;i<m;i++)
{
fprintf(fp,"%s%s%d%d%d",stu[i].xuehao,stu[i].name,stu[i].sex,&stu[i].ke1,
&stu[i].ke2,&stu[i].ke3);
fclose(fp);
printf("已储存");
}
}
void
paixu()
{
int
i,j,k,t;
for(i=0;i<m;i++)
{

stu[i].pin=(stu[i].ke1+stu[i].ke2+stu[i].ke3)/3;
}
for(i=0;i<=m-2;i++)
{

k=i;

for(j=i+1;j<=m-1;j++)

if(stu[j].pin<stu[k].pin)

k=j;

if(k!=i)

{

t=stu[k].pin;

stu[k].pin=stu[i].pin;

stu[i].pin=t;

}
}
for(i=0;i<m;i++)
{printf("第
%d
个学生的姓名%s:",i+1,stu[i].name);
printf("\n第
%d
个学生的性别:%s",i+1,stu[i].sex);
printf("\n第
%d
个学生的数学成绩:%d",i+1,stu[i].ke1);
printf("\n第
%d
个学生的语文成绩:%d",i+1,stu[i].ke2);
printf("\n第
%d
个学生的英语成绩:%d",i+1,stu[i].ke3);
printf("\n第
%d
个学生的平均成绩:%d",i+1,stu[i].pin); }
}
void
menu()
{
int
nub;
printf("
\n\n学生成绩管理系统\n\n");
printf("*****系统功能菜单*****\n");
printf("----------------------\n");
printf("1.输入学生信息\n");
printf("2.查询学生信息\n");
printf("3.按学号删除信息\n");
printf("4.读入学生信息\n");
printf("5.保存信息(要把修改保存到文件,退出程序前必须执行本项)\n");
printf("6.查询学生平均成绩信息\n");
printf("0.退出系统\n");
printf("----------------------\n");
printf("请选择菜单编号:");
scanf("%d",&nub);
switch(nub)
{
case
1:insert();break;
case
2:seek();break;
case
3:del();break;
case
4:readfile();break;
case
5:save();break;
case
6:paixu();break;
case
0:k=0;break;
default:printf("请在0-6之间选择\n");
}}
void
main()
{
while(k)
menu();
}
//平均数是排序后,输出的,如果你不想直接输入,那就不要对每个学生进行选择排序了

F. c语言读入7个选手的编号与得分,要求输出优秀率及格率,平均分,输出排行榜

#include <stdio.h>
typedef struct
{
int number;
int score;
}player;

float average(player play[7])
{
int i;
float sum = 0;
for (i = 0; i < 7; i++)
{
sum += play[i].score;
}
return sum/7;
}

void calc(player play[7], float *good, float *well)
{
int i,j=0,k=0;
for (i = 0; i < 7; i++)
{
if (play[i].score >= 90)
{
j++;
k++;
}
else if (play[i].score >=60)
{
k++;
}
}
*good = (float)j/7;
*well = (float)k/7;
}

void rank(player play[7])//排序,冒泡
{

int i,j;
int tmp,tmpnum;
for (i = 0; i < 7; i++)
{
for (j = 0; j < 6-i; j++)
{
if (play[j].score < play[j+1].score)
{
tmp = play[j].score;
tmpnum = play[j].number;
play[j].score = play[j+1].score;
play[j].number = play[j+1].number;
play[j+1].score = tmp;
play[j+1].number = tmpnum;
}
}
}

printf("\n排行:\n");
for (i= 0; i < 7; i++)
{
printf("%d %d\n", play[i].number, play[i].score);
}
}

void main()
{
player play[7];
int i;
float good,well;

for (i = 0; i < 7; i++)
{
printf("输入选手编号:");
scanf("%d", &play[i].number);
printf("输入选手%d的得分:", play[i].number);
scanf("%d",&play[i].score);
}

calc(play, &good, &well);
printf("优秀率为:%f\n", good);
printf("及格率为:%f\n", well);
printf("平均分为:%f\n", average(play));
rank(play);
}

G. 如何用C语言编程计算学生的平均成绩

#include<stdio.h>
void main(){
int i,j,score[10],count=0,temp,sum=0;
double avg;
for(i=0;i<10;i++){ //输入10个学生的成绩,并求着10个学生的成绩总和
printf("请输入第%d个学生的成绩:",(i+1));
scanf("%d",&score[i]);
sum+=score[i];
}
avg=sum*1.0/10; //求着这10个学生成绩的平均值
for(i=0;i<10;i++){ //统计小于平均分的学生人数
if(score[i]<avg){
count++;
}
}
for(i=0;i<10;i++){ //使用冒泡排序对这10个学生的成绩逆序排序
for(j=0;j<9-i;j++){
if(score[j]<score[j+1]){
temp=score[j];
score[j]=score[j+1];
score[j+1]=temp;
}
}
}
printf("最高成绩:%d分,平均成绩:%.2f分,低于平均成绩的人数是:%d人!\n",score[0],avg,count);
}

H. 输入20个学生的C语言课程成绩,求出其中最高分,最低分和平均分

第五次回答这个问题了。。。实在不想写了。。。原来写的你改一下吧,不会改再问哈

#include<stdio.h>

struct people

{

int number;

int mark;

}student[8];

int main()

{

int i,j;

double pass=0,good=0;

printf("请输入选手编号和成绩: ");

for(i=1;i<=7;i++)

{

scanf("%d %d",&student[i].number,&student[i].mark);

if(student[i].mark>=60)

{

pass++;

}

if(student[i].mark>=90)

{

good++;

}

}

for(j=0;j<6;j++) //进行9次循环,实现9趟比较。

{

for(i=1;i<=6-j;i++) //在每一趟中进行9-j次比较。

{

if(student[i].mark<student[i+1].mark) //相邻两个数比较。

{

student[0].number=student[i].number;

student[0].mark=student[i].mark;

student[i].number=student[i+1].number;

student[i].mark=student[i+1].mark;

student[i+1].number=student[0].number;

student[i+1].mark=student[0].mark;

}

}

}

printf("及格率为:%.2lf ",pass/7);

printf("优秀率为:%.2lf ",good/7);

printf("排行榜: ");

for(i=1;i<=7;i++)

{

printf("第%d名:%d %d ",i,student[i].number,student[i].mark);

}

}

下面是上述函数输出效果。。。

I. 求平均成绩c语言

#include<stdio.h>

int main()

{ int n,i,x,s=0;

scanf("%d",&n); //求n个成绩的平均分

for(i=0; i<n; i++)

{ scanf("%d",&x);

s+=x;

}

printf("%.2f ",(float)s/n);

return 0;

}

J. C语言程序 输入10个学生的成绩,要求输出这10个成绩的及格率和优秀率,再输出不及格的成绩

<p>#include <stdio.h></p>
<p>int main()</p>
<p>{</p>
<p>int score[10];</p>
<p>printf("请输入10个同学的分数\n");</p>
<p>for(int i=0;i<10;i++)</p>
<p>scanf("%d",&score[i]);</p>
<p>int pass=0,excellent=0;</p>
<p>for(i=0;i<10;i++)</p>
<p>{</p>
<p>if(score[i]>=60)</p>
<p>pass++;</p>
<p>if(score[i]>=80)</p>
<p>excellent++;</p>
<p>}</p>
<p>printf("及格率是%g%%\n",pass/10.0*100);</p>
<p>printf("优秀率是%g%%\n",excellent/10.0*100);</p>
<p>printf("\n不及格的分数为");</p>
<p>for(i=0;i<10;i++)</p>
<p>if(score[i]<60)</p>
<p>printf("%3d",score[i]);</p>
<p>printf("\n");</p>
<p>}</p>
<p></p>