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

作者&投稿:长兴详 (若有异议请与网页底部的电邮联系)
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("
");
}
}

扩展资料: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;
}

#include
#include
#includestruct
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("------------------
");printf("1.按学号查询
");printf("2.退出本菜单
");printf("------------------
");while(1){
printf("请选择子菜单编号:");scanf("%d",&item);flag=0;switch(item){case
1:printf("请输入要查询的学生的学号:
");scanf("%s",s1);for(i=0;i<n;i++)if(strcmp(stu[i].xuehao,s1)==0){
flag=1;printf("该学生学号,姓名,性别,数学,语文,英语
分别为:
");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("该学号不存在!
");
break;
case
2:return;
default:printf("请在1-2之间选择
");
}
}
}
void
insert()
{
int
i=n,j,flag;
printf("请输入待增加的学生数:
");
scanf("%d",&m);
do
{
flag=1;
while(flag)
{
flag=0;
printf("请输入第
%d
个学生的学号:
",i+1);
scanf("%s",stu[i].xuehao);
for(j=0;j<i;j++)
if(strcmp(stu[i].xuehao,stu[j].xuehao)==0)
{
printf("已有该学号,请检查后重新录入!
");
flag=1;
break;
}
}
printf("请输入第
%d
个学生的姓名:",i+1);
scanf("%s",stu[i].name);
printf("
请输入第
%d
个学生的性别:",i+1);
scanf("%s",stu[i].sex);
printf("
请输入第
%d
个学生的数学成绩:",i+1);
scanf("%d",&stu[i].ke1);
printf("
请输入第
%d
个学生的语文成绩:",i+1);
scanf("%d",&stu[i].ke2);
printf("
请输入第
%d
个学生的英语成绩:",i+1);
scanf("%d",&stu[i].ke3);if(flag==0)
{
i=i;
i++;
}
}while(i<n+m);
n+=m;
printf("录入完毕!

");
}void
del()
{
int
i,j,flag=0;
char
s1[20];
printf("请输入要删除学生的学号:
");
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("该学号不存在!
");
if(flag==1)
{
printf("删除成功,显示结果请选择菜单6
");
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("录入完毕!
");
}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("

%d
个学生的性别:%s",i+1,stu[i].sex);
printf("

%d
个学生的数学成绩:%d",i+1,stu[i].ke1);
printf("

%d
个学生的语文成绩:%d",i+1,stu[i].ke2);
printf("

%d
个学生的英语成绩:%d",i+1,stu[i].ke3);
printf("

%d
个学生的平均成绩:%d",i+1,stu[i].pin); }
}
void
menu()
{
int
nub;
printf("


学生成绩管理系统

");
printf("*****系统功能菜单*****
");
printf("----------------------
");
printf("1.输入学生信息
");
printf("2.查询学生信息
");
printf("3.按学号删除信息
");
printf("4.读入学生信息
");
printf("5.保存信息(要把修改保存到文件,退出程序前必须执行本项)
");
printf("6.查询学生平均成绩信息
");
printf("0.退出系统
");
printf("----------------------
");
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之间选择
");
}}
void
main()
{
while(k)
menu();
}
//平均数是排序后,输出的,如果你不想直接输入,那就不要对每个学生进行选择排序了

#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);
}


求三角形面积c语言编程
在C语言中,计算三角形面积可以通过输入数据、计算面积以及整合答案三方面进行编程。1、输入数据:先需要从用户那里获取三角形的三条边的长度。这可以通过使用scanf函数来实现。在输入数据之前,可以向用户说明需要输入的数据类型(例如,%lf表示double类型),并提示用户输入三角形的三条边的长度。2、计算...

用c语言编写一个程序,输入10个数求平均值。
然后在循环语句外使用(average=sum\/10)来计算10个数的平均数。按照题目的要求编写完源代码之后,点击“运行”,弹出输入页面之后,在输出页面输入10个整数值,然后点击回车键,计算机即可计算出10个数的平均数了。printf(这10个学生的成绩平均值是:%2f分。C语言编程任意输入10个学生的1门课的成绩,...

C语言编程:键盘输入10个数,用函数实现计算数据中最大值、最小值,并返 ...
if(p[i]>p[*pl])\/\/若当前输入的数比最大值记录大则修改记录*pl=i;}} int main(int argc,char *argv[]){int m[10],ml,ms;Input_Max_Min(m,&ml,&ms);\/\/用数组首址和最大值及最小值位置记录变量地址调用自定义函数printf("The MAX is m[%d]...

用c语言编程简单的加减乘除以及混合运算的计算器
用c语言编程简单的加减乘除以及混合运算的计算器  我来答 1个回答 #热议# 张桂梅帮助的只有女生吗?huafeng86999 2010-07-03 · TA获得超过258个赞 知道小有建树答主 回答量:262 采纳率:100% 帮助的人:203万 我也去答题访问个人页 关注 展开全部 #include <stdio.h>#include <stdlib.h>#...

怎么用c语言计算圆周长和面积
代码如下:include<stdio.h> int main(){ int radius;float area,perimeter;radius=6;perimeter=2*3.14*radius;printf("圆的周长=%f英寸\\n",perimeter);area=3.14*radius*radius;printf("圆的面积=%f平方英寸\\n",area);return(0);} 2、c语言计算矩形的周长和面积 include<stdio.h> \/*长...

c语言 编程实现求n!要求用定义求阶乘的函数
接着将输入的数传入处理阶乘的函数中完成计算,最后输出打印结果。prime函数有一个参数,首先判断是否为正数,然后用prime函数自身乘以参数s,最后返回值即可完成:3、将程序编译运行,弹出窗口输入任意的数,计算阶乘;这里输入7,得到结果是5040。以上就是C语言求阶乘的方法:...

用C语言编程:1000位以内的正整数的加法运算
声明两个能容纳1000位十进制数的char型数组存储输入数字字符串,以长的做被加数和结果,短的长度控制加法循环次数。在加法过程中判断和处理进位。举例代码如下:\/\/#include "stdafx.h"\/\/If the vc++6.0, with this line.#include "stdio.h"#include "string.h"int main(void){ char a[1002]...

用c语言编程,求从1的阶乘一直加到20的阶乘。
2、程序中设置一个循环的临时变量和接受阶乘和的sum变量,循环中先遍历出20以内的数字子,然后计算每个数的阶乘,在将它们相加起来,因为是一个非常大的数,所以这里sum是double类型的,最后把结果输出就可以了:3、最后调试编译程序,就会看到输出的20阶乘内的和了,是一个非常大的数。以上就是用c语...

C语言中如何编程计算阶乘
=EOF){ int ans=1; for(int i=1;i<=n;i++) ans*=i; printf("%d %d\\n",ans,Fac(n)); } return 0;}有个值得注意的地方:阶乘时,数增大的很快,在n达到13时就会超过int的范围,此时可以用long long或是 __int64来存储更高精度的值,如果还想存储更高位的,需要用...

c语言编程,编一个多功能计算器
double GetTop_OPND(OPND *s); \/\/取栈顶运算数 void Init_OPTR(OPTR *s); \/\/初始化运算符栈 void Push_OPTR(OPTR *s,char x); \/\/push一个运算符 char Pop_OPTR(OPTR *s); \/\/pop一个运算符 char GetTop_OPTR(OPTR *s); \/\/取栈顶运算符 int IsOpr(char c); \/\/判断输入字符...

景泰县18512726751: c语言求平均分 -
傅琼吗氯: #include <stdio.h> void main() {int a[10];int i,s,n;for(i=0;i<10;i++)scanf("%d",a+i);s=a[0]+a[1]+a[2]+a[3]+a[4]+a[5]+a[6]+a[7]+a[8]+a[9];n=s/10;printf("平均数是:");printf("%d\n",n); }

景泰县18512726751: C语言编程,从键盘输入10个学生的成绩,试统计出他们的成绩总和及平均值 -
傅琼吗氯: #include <stdio.h>#define MAX 10struct student {char no[10];char name[10];float score[3]; }stu[MAX];float ave_course[3] = {0}; float ave_student[MAX] = {0};int max_ave_i = 0; // 存储平均分最高的学生索引 int max_course_i[3] = {0}; //存储...

景泰县18512726751: 用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 ...

景泰县18512726751: C语言:编写程序,输入10个学生的成绩数据,计算并输出平均分及低于平均分的学生的人数. -
傅琼吗氯: #include<stdio.h> int main() { int i; float a[10],min,max,avg;//max表示最高分,min表示最低分,avg表示平均分 printf("请输入10位学生的分数\n"); printf("********************************\n"); for(i=0;i<=9;i++) { printf("请输入一位学生的分数:"...

景泰县18512726751: 用c语言编写程序.从键盘上输入某同学四门课程的成绩计算并输出总成绩和平均成绩 -
傅琼吗氯: #include <stdio.h>int main() {int buf[4]; int i ; int sum = 0;float aver =0;printf("please input four scores:\n"); for (i = 0; i < 4; i++) {scanf("%d", &buf[i]);} sum = buf[0]+buf[1]+buf[2]+buf[3];aver = sum/4.0;printf("total : %d; average : %d\n"; sum, aver) return 0;}

景泰县18512726751: 请用C语言编一个程序计算3位学生3门课成绩总分和平均成绩? -
傅琼吗氯: C语言实现如下:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15#include <stdio.h> voidmain() {floata[3][3],sum[3];inti;for(i=0;i<3;i++){printf("请输入第%d位同学的三科成绩:",i+1);scanf("%f%f%f",&a[i][0],&a[i][1],&a[i][2]);//输入该同学的...

景泰县18512726751: 设计一个C语言程序,要求能求一个班级学生的总分和平均分 -
傅琼吗氯: 用malloc 函数,用于申请内存.首先先输入学生数n,然后申请一片内存,如下: #include<stdio.h> #include<stdlib.h> int main() {int n,i;float *score;float sum=0.0,ave=0.0;printf("请输入班级学生人数:");scanf("%d",&n); score=(...

景泰县18512726751: 用c语言:输入10个学生5门课的成绩,分别用函数求:(1)每个学生平均分;(2)每门课的平均数分; -
傅琼吗氯: #include<stdio.h> void main() { int i,j,score[2][3]={{1,2,3}{2,3.4}},v[2],sum=0,average,max; max=a[0][0]; for(i=0;i<2;i++) { for(j=0;j<3;j++) { if(a[i][j]>max) {max=a[i][j];} sum=sum+a[i][j]; } v[i]=sum/i;//每个同学的平均分; sum=0;//把总分值清零; } ...

景泰县18512726751: 帮我改下C语言的程序,编程求n门课程的平均成绩.分别用三个函数实现课程成绩的输入,平均.. -
傅琼吗氯: main里面的aver应该写成0.0,然后就是f2里面的i应该赋值为i=0

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网