当前位置:首页 » 考试成绩 » c学生成绩

c学生成绩

发布时间: 2020-11-29 17:59:27

1. C语言 统计学生成绩

#include<stdio.h>
#include<stdlib.h>
struct student
{
double score[5];
}s[10];
void avg()
{
printf("\n");
double sum;
for(int i=0;i<10;i++)
{
sum=0;
printf("第%d位学生的平均分数是: ",i+1);
for(int j=0;j<5;j++)
sum+=s[i].score[j];
printf("%.2lf\n",sum/5);
}
printf("\n");
return ;
}
void tavg()
{
printf("\n");
double sum;
for(int j=0;j<5;j++)
{
sum=0;
for(int i=0;i<10;i++)
sum+=s[i].score[j];
printf("第%d门功课的平均分是: %.2lf\n",j+1,sum/10);
}
return ;
}
void maxsc()
{
printf("\n");
double max=-1;
int i,j;
for( i=0;i<10;i++)
{
for( j=0;j<5;j++)
if(max<s[i].score[j])
{
max=s[i].score[j];
}
}
printf("最高分是:%.2lf分,对应学生与功课如下:\n",max);
for(i=0;i<10;i++)
{
for(int j=0;j<5;j++)
if(max==s[i].score[j])
{
printf("第%d位学生的第%d门成绩\n",i+1,j+1);
}
}
printf("\n");
}
int main()
{
int i,j;
for(i=0;i<10;i++)
{
for(j=0;j<5;j++)
{
printf("输入第%d位学生的第%d门功课的成绩: ",i+1,j+1);
scanf("%lf",&s[i].score[j]);
printf("\n");
}
printf("\n");

}
printf("学生平均分数情况:\n");
avg(); //每个学生的平均分
printf("功课平均分数情况:\n");
tavg(); //每门功课的平均分
printf("最高分数即对应学生功课:\n");
maxsc(); //最高分对应的学生和功课
system("PAUSE");
return 0;
}

2. c语言统计学生成绩

#include <stdio.h>
#define N 2
#define M 2
int s[N]={0},a[N][M];
char b[N][10];
void fun1(int a[N][M])
{
int i,j;
for(i=0;i<N;i++)
{
for(j=0;j<M;j++)
s[i]+=a[i][j];
printf("第%d个同学的平均分是%.2f\n",i+1,s[i]/5.0);
}
}

void fun2(int a[N][M])
{
float p[M]={0};
int i,j;
for(i=0;i<M;i++)
{
for(j=0;j<N;j++)
p[i]+=a[j][i];
p[i]/=10.0;
printf("第%d门课程的平均分是%.2f\n",i+1,p[i]);
}
}

void fun3(char b[N][10])
{
int max,t,i;
max=s[0];
for(i=1;i<N;i++)
if(s[i]>max)
{
max=s[i];
t=i; /*记住最大时i的值,以便找到姓名*/
}
printf("%s荣获所有学生中最高分%d分\n",b[t],max);
}

main()
{
int i,j;
float p[M]={0};

/* 输入姓名和成绩*/
for(i=0;i<N;i++)
{
printf("输入第%d个学生的姓名:",i+1);
scanf("%s",&b[i]);
for(j=0;j<M;j++)
{
printf("输入该学生的第%d门成绩:",j+1);
scanf("%d",&a[i][j]);
}
}
printf("\n");
/*计算每个同学平均分*/
fun1(a);
printf("\n");
/*计算每门课的平均分*/
fun2(a);
printf("\n");
/*比较求出最大总分和输出姓名*/
fun3(b);
return 0;
}

代码经过测试了 运行成功
如果有什么不懂的可以问我

3. C语言学生成绩

#include
<stdio.h>
main()
{
int
i=0,n=0,score=1,total=0;
//给score赋一个正值,否则无法进入while循环
float
aver;
int
max,min;
int
stu[100];
while(
score>0)
{
scanf("%d",&score);
if(score<0)break;//加一条判断语句,否则把-1也存入数组中。
stu[i]=score;
i++;n++;
}
for(i=0;i<n;i++)
total+=stu[i];
//上面给total赋值,否则total的初值不确定
aver=total/n;
max=min=stu[0];
for(i=0;i<n;i++)
{if(max<stu[i])
//改大于号为小于号
max=stu[i];
if(min>stu[i])
//改小于号为大于号
min=stu[i];
}
printf("%.2f
max=%2d
min=%2d",aver,max,min);
//getch();
}

4. c语言 学生成绩排名

#include<stdio.h>
voidsetList(int*a,intlen);
voidprintfList(int*a,intlen);
voidpxList(int*a,intlen);
voidinsertList(int*a,intlen);
voidfanList(int*a,intlen);
intmain()
{
inta[11];//1.定义一个数组a[11],用以存放学生的成绩。
setList(a,10);//2.从键盘输入10个学生成绩。
pxList(a,10);//3.采用选择法,将学生成绩按照从高到低进行排序。
printfList(a,10);
insertList(a,10);//4.再输入一个学生的成绩,将此成绩按照排序规律插入原学生成绩数组。
printfList(a,11);
fanList(a,11);//5.将排好序的成绩单进行反序存放,即原来是从高到低,现在改为从低到高排列
printfList(a,11);
return0;
}
voidsetList(int*a,intlen)//输入
{
inti;
printf("请输入%d个学生成绩 ",len);
for(i=0;i<len;i++)
scanf("%d",&a[i]);
}
voidprintfList(int*a,intlen)//打印数组
{
inti;
printf(" ---打印数组--- ");
for(i=0;i<len;i++)
printf("%d",a[i]);

}
voidpxList(int*a,intlen)//选择排序
{
inti,j;
printf(" ---从大到小排序--- ");
for(i=0;i<len-1;i++)
for(j=i+1;j<len;j++)
if(a[i]<a[j])
{
a[j]^=a[i];
a[i]^=a[j];
a[j]^=a[i];
}
}
voidinsertList(int*a,intlen)//插入数组
{
printf(" ---插入数组--- ");
printf("输入要插入的数:");
scanf("%d",&a[len]);
pxList(a,11);
}
voidfanList(int*a,intlen)//数组反向存储
{
int*p0,*p1;
p0=a;
p1=&a[len-1];
while(p0<p1)
{
*p0^=*p1;
*p1^=*p0;
*p0^=*p1;
p0++;
p1--;
}

}

5. c语言:学生成绩等级

给出的问题不严密:
只有大于和小于,没有等于的情况,比如说平均分在50到70之间,然后第2个和第3个数之和正好等到于140分时,一楼上程序便没有输出,我想是题目出得不太严密吧,不可能出题者是故意把这些情况漏掉吧!所以呢,经过笔者的修改呢,我觉得以下程序能包括出题者的全部意思:
如果题目非我所想,那你也可以自己根据情况改一下那几个>或者=号,你自己看看吧!
#include
<stdio.h>
main()
{
float
a[3],i,average;
for(i=0;i<3;i++)
scanf("%f",&a[i]);
average=(a[0]+a[1]+a[2])/3.0;
if(average>=90)
printf("Grade=A");
if(average>=70&&average<90&&a[2]>=90)
printf("Grade=A");
if(average>=70&&average<90&&a[2]<90)
printf("Grade=B");
if(average>=50&&average<70&&a[1]+a[2]>=140)/*这个地方与以一楼上程序不同,题目要求的是第2和3个数之和要大于140,一楼上的是第1和2个之和大于140,与题意不合(因为数组是从0开始计数的)*/
printf("Grade=C");
if(average>=50&&average<70&&a[1]+a[2]<140)
printf("Grade=D");
if(average<50)
printf("Grade=F");
}

6. 用c语言,求学生成绩

#include<stdio.h>
#include<stdlib.h>
/*定义全局变量*/
int num;
struct student
{
l name[20];
charong id;
char sex[10];
int math;
int english;
int c_program;
int total;
}stu[41];
/*主菜单*/
void page_title()
{
printf("※※※※※※※※计算机系学生成绩管理※※※※※※※※\n");
printf(" 1、请录入学生成绩记录\n");
printf(" 2、请显示学生成绩记录\n");
printf(" 3、请修改学生成绩记录\n");
printf(" 4、请删除学生成绩记录\n");
printf(" 5、请按学号查询学生成绩记录\n");
printf(" 6、请按学号显示学生成绩记录\n");
printf(" 7、请按总成绩递减输出\n");
printf(" 8、请保存\n");
printf(" 0、请退出\n");
}
/*main()
{
system("cls");
pape_title();
}*/
void student_new()//1、录入学生成绩
{
int i;
printf("请输入学生个数<1-41>:");
scanf("%d",&num);
printf("*****************************************************\n");
printf("学号 姓名 性别 数学 英语 C语言\n");
printf("*****************************************************\n");
for(i=0;i<num;i++)//num个学生
{
scanf("%ld%s%s%d%d%d",&stu[i].id,&stu[i].name,&stu[i].sex,&stu[i].math,&stu[i].english,&stu[i].c_program);
stu[i].total=stu[i].math+stu[i].english+stu[i].c_program;
printf("-----------------------------------------------------\n");
}
}

void show()//2、显示学生成绩
{
int i;
printf("*******************************************************\n");
printf("学号 姓名 性别 数学 英语 C语言 总成绩\n");
printf("*******************************************************\n");
for(i=0;i<num;i++)
{
printf("%ld\t%s\t%s\t%d\t%d\t%d\t%d\t\n",stu[i].id,stu[i].name,stu[i].sex,stu[i].math,stu[i].english,stu[i].c_program,stu[i].total);
printf("-------------------------------------------------------\n");
}
}

void student_edit()//3、修改学生信息
{
int i,n;
long stunum;
printf("请输入要修改的学号:");
scanf("%d",&stunum);
printf("==============以下选项可供选择===============\n");
printf(" 1、请修改学号\n");
printf(" 2、请修改姓名\n");
printf(" 3、请修改性别\n");
printf(" 4、请修改数学成绩\n");
printf(" 5、请修改英语成绩\n");
printf(" 6、请修改c语言成绩\n");
printf("请输入要修改的选项:");
scanf("%d",&n);
for(i=0;i<num;i++)
{
if(stu[i].id==stunum)//查找
{

if(n==1)
{
printf("请修改学号:\n");
scanf("%ld",&stu[i].id);
}
if(n==2)
{
printf("请修改姓名:\n");
scanf("%s",&stu[i].name);
}
if(n==3)
{
printf("请修改性别:\n");
scanf("%s",&stu[i].sex);
}
if(n==4)
{
printf("请修改数学成绩:\n");
scanf("%d",&stu[i].math);
}
if(n==5)
{
printf("请修改英语成绩:\n");
scanf("%d",&stu[i].english);
}
if(n==6)
{
printf("请修改c语言成绩:\n");
scanf("%d",&stu[i].c_program);
}
stu[i].total=stu[i].math+stu[i].english+stu[i].c_program;//求总成绩
break;
}
if(i==num)
printf("该生信息不存在!");
}
}

void student_del()//*4、删除一个学生的学号(把后面的数<i+1>往前移,把要删除的那个数挤掉)【修改与之相似】
{
int i,j,t;
long stunum;
printf("请输入您要删除的学号:");
scanf("%d",&stunum);
for(i=0;i<num;i++)
{
if(stu[i].id==stunum)//查找
{
printf("确认要删除该生信息!\n");
printf("输入的数为0,其他则退出\n");
scanf("%d",&t);
if(t==0)
{
for(j=i+1;j<num;j++)//删除
{
stu[j-1]=stu[j];
}
num--;//退学,减少了一个人
break;
}
}
}
if(i==num)
printf("该学生信息不存在\n");
}

void sore_search()//5、按学号查询学生成绩
{
int i=0;
long stunum;//定义学号
printf("请输入您要查找的学号:");
scanf("%d",&stunum);//输入要查找到的学号
for(i=0;i<num;i++)
{
if(stu[i].id==stunum)//输入的学号和所有学生的学号比较,即查找
{
printf("*******************************************************\n");
printf("学号 姓名 性别 数学 英语 C语言 总成绩\n");
printf("*******************************************************\n");
printf("%ld\t%s\t%s\t%d\t%d\t%d\t%d\t\n",stu[i].id,stu[i].name,stu[i].sex,stu[i].math,stu[i].english,stu[i].c_program,stu[i].total);
printf("-------------------------------------------------------\n");
break;//找到后马上停止
}
}
if(i==num)//说明for都执行了一遍,for语句里没有num;
printf("该生信息不存在");
}

void score_sort()//7、按总成绩递减排序
{
int i,j;
struct student t;
for(i=0;i<=num-2;i++)//轮数//
{
for(j=0;j<=num-2;j++)//相邻两个数进行比较
{
if(stu[j].total<stu[j+1].total)
{
t=stu[j];
stu[j]=stu[j+1];
stu[j+1]=t;
}
}
}
}

void save()//8、保存(通过代码来控制文件,在C盘中)
{
int i;
FILE *fp=fopen("c:\\score.txt","w+");//FILE(一定要大写):文件类型 *FP代表指针 .txt代表记事本文件 w+:既可以保存,又可以写
if(fp==NULL)//fp文件若为空
{
printf("文件打开失败");
exit(1);
}
for(i=0;i<num;i++)
fprintf(fp,"%ld\t%s\t%s\t%d\t%d\t%d\t%d\t\n",stu[i].id,stu[i].name,stu[i].sex,stu[i].math,stu[i].english,stu[i].c_program,stu[i].total);
fclose(fp);//fprintf:保存,fp:保存到fp文件中,fclose:关闭fp文件
}
void load()//1、加载文件函数
{
int i;
int n;//n:记录数
FILE *fp=fopen("c:\\score.txt","r");//r->read的标志 fopen的功能是打开文件
if(fp==NULL)
{
printf("文件打开失败");
exit(1);
}
printf("请输入记录数:");
scanf("%d",&n);
num=n;//把读到的n的个数赋给num
for(i=0;i<num;i++)
{
fscanf(fp,"%ld\t%s\t%s\t%d\t%d\t%d\t%d\t\n",&stu[i].id,&stu[i].name,&stu[i].sex,&stu[i].math,&stu[i].english,&stu[i].c_program,&stu[i].total);
}//fscanf:从文件中读取数据
fclose(fp);//关闭fp文件
}

main()
{
int select;//选择选项
int flag=1;//退出标志
int user,admin;
printf("★◎★◎★◎====欢迎使用学生信息管理系统!====★◎★◎★◎\n");
printf("========请输入您的账号和密码:========\n");
scanf("%d,%d",&user,&admin);
if(user==123&&admin==123)
{
system("cls");//清屏
page_title();
while(flag!=0)//只要flag!=0,就一直循环
{
printf("请输出选项:");
scanf("%d",&select);
switch(select)
{
case 1:student_new();break;
case 2:show();break;//显示
case 3:student_edit();show();break;//修改
case 4:student_del();show();break;
case 5:sore_search();break;
case 6:load();show();break;
case 7:score_sort();show();break;
case 8:save();show();break;
case 0:flag=0;break;
default:break;

}
}
}
else printf("对不起,您输入的密码不正确!");
}

7. c语言学生成绩输入

#defineCLEAR(c)while((c=getchar())!='
'&&c!=EOF)
#include<stdio.h>
#include<conio.h>
#defineN3
#defineM3
intmain(){/**FOUND**/
structstudent{
intnum;/*学号*/
charname[16];/*姓名*/
floatscore[M];/*成绩*/
}a[N];
inti,l,k,c;/**FOUND**/
for(i=0;i<N;i++){
for(l=0;l<M+2;l++){
if(l=0){
printf("学号");
scanf("%d",&a[i].num);/**FOUND**/
CLEAR(c);/**FOUND**/}
elseif(l=1){
printf("姓名");
scanf("%16s",&a[i].name);/**FOUND**/}
else{/*少个大括号*/
k=l-1;
printf("成绩%d",k);
scanf("%f",&a[i].score[M]);/**FOUND**/
CLEAR(c);/**FOUND**/
}
}
getch();
return0;/**FOUND**/
}

改动的地方我用注释作了标记。

8. c语言编写学生成绩处理

//给你个示例,仅供参考
#include<stdio.h>
#include<stdlib.h>

#defineNO_LEN11
#defineNAME_LEN9
#defineSTUDENT_NUM5
#defineTOP_THREE3

typedefstructstudent
{
charno[NO_LEN];
charname[NAME_LEN];
floata;
floatb;
floatc;
floatavg;
}ST;//st[STUDENT_NUM];

intget_student_info(ST*st,intlen);
voiddisplay(constST*st,intlen);
voidcalculate_average(ST*st,intlen);
voidsort(ST*st,intlen);


intmain(intargc,char*argv[])
{
STst[STUDENT_NUM];

get_student_info(st,STUDENT_NUM);
calculate_average(st,STUDENT_NUM);
sort(st,STUDENT_NUM);

display(st,STUDENT_NUM);
display(st,TOP_THREE);


return0;
}

/*从键盘输入STUDENT_NUM个学生的信息*/
intget_student_info(ST*st,intlen)
{
inti=0,ret=0;
if(0==st||0>=len||STUDENT_NUM<len)
{
printf("parametererror ");
returnret=1;
}

for(;i<len;++i)
{
printf("输入第%d个学号、姓名、三门课成绩:",i+1);
scanf("%10s%8s%f%f%f",st[i].no,st[i].name,&st[i].a,&st[i].b,&st[i].c);
}

returnret;
}

/*显示前len个学生的信息*/
voiddisplay(constST*st,intlen)
{
inti=0;
if(0==st||0>=len||STUDENT_NUM<len)
{
printf("parametererror ");
return;
}

printf("================================== ");
for(;i<len;++i)
{
printf("%s%s%.1f%.1f%.1f%.1f ",
st[i].no,st[i].name,st[i].a,st[i].b,st[i].c,st[i].avg);
}
}

/*计算每个学生的平均成绩*/
voidcalculate_average(ST*st,intlen)
{
inti=0;
if(0==st||0>=len||STUDENT_NUM<len)
{
printf("parametererror ");
return;
}

for(;i!=len;++i)
{
st[i].avg=(st[i].a+st[i].b+st[i].c)/3.0;
}
}

/*冒泡排序降序排列*/
voidsort(ST*st,intlen)
{
inti=0,j=0;
STtmp;
if(0==st||0>=len||STUDENT_NUM<len)
{
printf("parametererror ");
return;
}
for(;i<len-1;++i)
{
for(j=0;j<len-1-i;++j)
{
if(st[j].avg<st[j+1].avg)
{
tmp=st[j];
st[j]=st[j+1];
st[j+1]=tmp;
}
}
}
}

9. c语言学生成绩的等级

||#include<stdio.h>
int main()
{
int s=0;
printf("请输入学生的成绩:");
scanf("%d",&s);
if (s < 0 || s>100)
{
printf("error\n");
}
else if (s<60)
{
printf("fail\n");
}
else if (s < 70)
{
printf("pass\n");
}
else if (s < 80)
{
printf("medium\n");
}
else if (s < 90)
{
printf("good\n");
}
else
{
printf("excellent\n");
}
return 0;
}

楼主你要内加油了容

热点内容
武汉大学学生会辅导员寄语 发布:2021-03-16 21:44:16 浏览:612
七年级学生作文辅导学案 发布:2021-03-16 21:42:09 浏览:1
不屑弟高考成绩 发布:2021-03-16 21:40:59 浏览:754
大学毕业证会有成绩单 发布:2021-03-16 21:40:07 浏览:756
2017信阳学院辅导员招聘名单 发布:2021-03-16 21:40:02 浏览:800
查询重庆2018中考成绩查询 发布:2021-03-16 21:39:58 浏览:21
结业考试成绩怎么查询 发布:2021-03-16 21:28:40 浏览:679
14中医医师资格笔试考试成绩查分 发布:2021-03-16 21:28:39 浏览:655
名著赏析课程标准 发布:2021-03-16 21:27:57 浏览:881
北京大学商业领袖高端培训课程 发布:2021-03-16 21:27:41 浏览:919