当前位置:首页 » 考试成绩 » 输入五个学生的三门课程成绩

输入五个学生的三门课程成绩

发布时间: 2021-03-16 01:57:39

『壹』 用C语言编写程序:有五个学生的三门课程的成绩,求每门课程的平均成绩

程序设计思路:首先我们需要定义一个学生的结构体,用于存放学生信息;接着是3个方法,一个输入学生信息的方法,一个是计算学生每门课程平均成绩的,最后一个是输出学生所有信息,包括计算好的平均成绩,具体实现代码如下:

#include<stdio.h>

#include<stdlib.h>

#defineARRAY_LEN100 /*数组长度*/

/*定义学生结构体*/

typedefstruct{

intno;/*学号*/

floatscore1;/*成绩1*/

floatscore2;/*成绩2*/

floatscore3;/*成绩3*/

floattotalScore;/*总分*/

floataverageScore;/*平均分*/

}student;

/*输入学生信息*/

voidinputInfo(studentstu[],intstuIndex){

inti;

printf("第%d名学生↓ ",stuIndex+1);

printf("学号:");

scanf("%d",&stu[stuIndex].no);

printf("成绩1:");

scanf("%f",&stu[stuIndex].score1);

printf("成绩2:");

scanf("%f",&stu[stuIndex].score2);

printf("成绩3:");

scanf("%f",&stu[stuIndex].score3);

putchar(' ');

}

/*计算平均成绩*/

voidcalculationScore(studentstu[],intstuIndex){

stu[stuIndex].totalScore=stu[stuIndex].score1+stu[stuIndex].score2+stu[stuIndex].score3;

stu[stuIndex].averageScore=stu[stuIndex].totalScore/3;

}/*输出学生成绩*/

voidprintInfo(studentstu[],intstuIndex){

inti;

printf("%d ",stu[stuIndex].no);

printf("%.2f ",stu[stuIndex].score1);

printf("%.2f ",stu[stuIndex].score2);

printf("%.2f ",stu[stuIndex].score3);

printf("%.2f",stu[stuIndex].averageScore);

putchar(' ');

}

intmain(void){

intstuNum=5,i;

studentstu[ARRAY_LEN];

/*输入、计算*/

puts("请输入学生信息:");

putchar(' ');

for(i=0;i<stuNum;i++){

inputInfo(stu,i);

calculationScore(stu,i);

}

putchar(' ');

printf("%d名学生成绩输入完毕!",stuNum);

putchar(' ');

puts("================================================ ");

/*输出*/

puts("学号 成绩1 成绩2 成绩3 平均成绩");

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

printInfo(stu,i);

getch();/*屏幕暂留*/

return0;

}

程序的运行结果:

(1)输入五个学生的三门课程成绩扩展阅读:

具有相同数据类型的数据我们可以用数组来存放,但对于上面的学生信息,包含多种数据类型,所以只能使用结构体来存放。

结构体的定义形式为:

struct 结构体名{

结构体所包含的变量或数组

};

结构体是一种集合,它里面包含了多个变量或数组,它们的类型可以相同,也可以不同,每个这样的变量或数组都称为结构体的成员(Member)。

结构体成员的定义方式与变量和数组的定义方式相同,只是不能初始化。注意大括号后面的分号;不能少,这是一条完整的语句。结构体也是一种数据类型,它由程序员自己定义,可以包含多个其他类型的数据。

像 int、float、char 等是由C语言本身提供的数据类型,不能再进行分拆,我们称之为基本数据类型;而结构体可以包含多个基本类型的数据,也可以包含其他的结构体,我们将它称为复杂数据类型或构造数据类型。

『贰』 编程打印学生数据:有5个学生,每个学生的数据包括学号、姓名、三门课程成绩,从键盘输入5个学生数据,

void main()
{/*二维数组*/
int i,j,a[3][5],b[3];
float temp_all=0,temp_c=0,s=0;
char *c[5]={"张三","王五","李四","赵六","周八"};
char *t[3]={"math","c","foxpro"};
//void change(int a[],int t);

for(i=0;i<5;i++)
{
printf("input %s 's score:",c[i]);
for(j=0;j<3;j++)
{
scanf("%d",&b[j]);
a[j][i] = b[j];
temp_c += b[j];
temp_all += a[j][i];
}
printf("%s 's average:%f \n",c[i],temp_c/3);
temp_c = 0;
}
printf("all_average:%f \n",temp_all/15);

for(j=0;j<3;j++)
{
for(i=0;i<5;i++)
{
s += a[j][i];

}
printf("%s average:%f \n",t[j],s/5);
s = 0;
}

『叁』 有五个学生,每个学生有三门课的成绩,从键盘上输入学生的学号,姓名,三门课成绩,把它们存放到磁盘中

示例:

import java.util.Scanner;

class Test50 {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

//定义学生类数组,里面存放五个学生的信息

Student[] stus = new Student[5];

System.out.println("请输入5个学生的信息:");

for(int i=0;i<stus.length;i++){

String str = sc.nextLine();

//001 张三 78 88 90输入以空格分隔

//利用String类中的split方法将字符串分割成字符串数组

String[] strs = str.split(" ");//strs[0],strs[1]...

//创建学生对象

Student stu = new Student();

stu.sid = strs[0];

stu.name = strs[1];

//利用Integer.ParseInt()方法,将字符串转换为整型

stu.chineseGrade =Integer.parseInt(strs[2]);

stu.mathGrade = Integer.parseInt(strs[3]);

stu.englishGrade = Integer.parseInt(strs[4]);

stu.averageGrade = (stu.chineseGrade+stu.mathGrade+stu.englishGrade)/3;

//将每次创建的学生对象赋值给学生数组

stus[i] = stu;

}

for(int i=0;i<stus.length;i++){

System.out.println("学号:"+stus[i].sid+",姓名:"+stus[i].name+",语文:"+stus[i].chineseGrade+",数学:"+stus[i].mathGrade+",英语:"+stus[i].englishGrade+",平均成绩:"+stus[i].averageGrade);

}

}

}

//定义一个Student类

class Student{

String sid;

String name;

int chineseGrade;

int mathGrade;

int englishGrade;

int averageGrade;

}

(3)输入五个学生的三门课程成绩扩展阅读

缺点:

1、C语言的缺点主要表现在数据的封装性上,这一点使得C在数据的安全性上有很大缺陷,这也是C和C++的一大区别。

2、C语言的语法限制不太严格,对变量的类型约束不严格,影响程序的安全性,对数组下标越界不作检查等。从应用的角度,C语言比其他高级语言较难掌握。也就是说,对用C语言的人,要求对程序设计更熟练一些。

『肆』 已知某班5名学生的三门课成绩试编写程序,输入这5个学生的三门课成绩a[5][3],输出每门课成绩的

#include <stdio.h>
/*定义结构体*/
struct student
{
int a;
int b;
int c;
float ave;
};
int main()
{
struct student sco[5];
printf("输入5个学生的3们成绩:\n");
for(i=0;i<5;i++)
{
scanf("%d%d%d",sco[i].a,sco[i].b,sco[i].c);
sco[i].ave=(float)(sco[i].a+sco[i].b+sco[i].c)/3;
}
printf("5名学生平均成绩分别为:\n");
for(i=0;i<5;i++)
{
printf("%.2f\n",sco[i].ave);
}
return 0;
}
————————————————
如果以上出现“%”符号,那是为何防止系统误识我把半角符号写成全角符号了,注意改回来。
————————————————
亲爱的LZ,如果我的回答能够帮你解决问题,或是对你有帮助,或是对你今后的发展造成积极的影响,那么请您的回答吧,同时更迫切地希望您能够在的时候帮我打上“能解决”和“原创”,然后把两行的五颗五角星分别点亮,点亮五角星就是点亮你我的希望。 我冲11级了,需要很多综合声望,感谢您的帮助,衷心祝愿您快乐每一天~

『伍』 编写程序要求:输入5个学生3门课程的成绩,

你好。


程序清单:

#include<stdio.h>
#include<string.h>
struct student //学生结构体
{
char name[30]; // 学生姓名
double score[3]; //三门成绩
double aver; //存平均成绩
} st[5],temp; //五个学生
int main()
{
double sum;//定义存放每个学生总成绩的变量
int i,j,count;
// 输入学生信息
for(i=0;i<5;i++)
{
printf("请输入%d号学生姓名:",i+1);
scanf("%s",st[i].name);

sum=0.0; //为每个学生的总成绩赋初值
for(j=0;j<3;j++)
{
printf("请输入%d号学生第%d门课程成绩:",i+1,j+1);
scanf("%lf",&st[i].score[j]); //循环输入每个学生的成绩
sum=sum+st[i].score[j]; //累加每个学生的总成绩
}
st[i].aver=sum/3.0;//计算每个学生的平均成绩
}
//利用冒泡法对平均成绩进行排序
for(i=0;i<4;i++)
for(j=i+1;j<5;j++)
{
if(st[i].aver<st[j].aver)
{
memcpy(&temp,&st[i],sizeof(struct student));
memcpy(&st[i],&st[j],sizeof(struct student));
memcpy(&st[j],&temp,sizeof(struct student));
}
}
// 输出结果
printf(" 至少有两个成绩在90分以上的学生有: ");
for(i=0;i<5;i++)
{
count=0;
for(j=0;j<3;j++)
{
if(st[i].score[j]>=90)
{
count++;
}
}
if(count>=2)
printf("%s ",st[i].name);
}
printf(" 平均分由高到低进行排序: ");
for(i=0;i<5;i++)
{
printf("%s %.1f ",st[i].name,st[i].aver);
}
return 0;
}


运行结果:


望采纳!

『陆』 C语言编程:输入5名学生3门课程成绩

您好!下面是我写的程序希望对您有用!
#include<stadio.h>
void main()
{
int x1,x2,x3,x4,x5,y1,y2,y3,y5,y5,z1,z2,z3,z4,z5,m1,m2,m3,m4,m5,n1,n2,n3;
printf("输入5名同学的3门课程的成绩 x1,x2,x3,x4,x5,y1,y2,y3,y5,y5,z1,z2,z3,z4,z5\n");
scanf("%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d",&x1,&x2,&x3,&x4,&x5,&y1,&y2,&y3,&y4,&y5,&z1,&z2,&z3,&z4,&z5);
n1=(x1+x2+x3+x4+x5)/5;
n2=(y1+y2+y3+y4+y5)/5;
n3=(z1+z2+z3+z4+z5)/5;
m1=(x1+y1+z1)/3;
m2=(x2+y2+z2)/3;
m3=(x3+y3+z3)/3;
m4=(x4+y4+z4)/3;
m5=(x5+y5+z5)/3;
printf("%d,%d,%d,%d,%d,%d,%d,%d",m1,m2,m3,m4,m5,n1,n2,n3);
}

『柒』 有五个学生,每个学生有三门课程的成绩,从键盘输入学生数据(包括学号,姓名,3门课程成绩),计算出平均成绩

经测试,程序正确运行,并把输入结果保存在stud文件中。
源代码如下:

#include <stdio.h>

#define ID 11

typedef struct _stu
{
char id[ID];
int sco1;
int sco2;
int sco3;
}stu;

int main()
{
int i;
stu s[5];
FILE *fp;
float ave;
printf("请输入五个学生的学号和三门成绩:\n");
for(i=0;i<5;i++)
{
scanf("%s%d%d%d",s[i].id,&s[i].sco1,&s[i].sco2,&s[i].sco3);
}

if((fp=fopen("stud","w"))==NULL)
{
printf("文件打开失败\n");
return ;
}

for(i=0;i<5;i++)
{
ave=(s[i].sco1+s[i].sco2+s[i].sco3)/3.0;
fprintf(fp,"%s %d %d %d %.2f\n",s[i].id,s[i].sco1,s[i].sco2,s[i].sco3,ave);
}

fclose(fp);
return 0;
}

『捌』 输入五个学生三门课程的成绩,并进行如下操作。 1 计算并输出每门课程的平均分 2 输出每门

用excel软件可以解决的。

『玖』 有5个学生,每个学生的数据包括学号、姓名、三门课的成绩,从键盘输入5个学生数据,要求输出三门课总平均

不需要那么麻烦,只需要把你的姓名以及考号输入电脑就可以查询你的各科成绩,也能得到你总成绩的平均分儿。

『拾』 输入五个学生3门课的成绩,计算和输出每个学生和每门课程的平均成绩。

#include<stdio.h>

#defineN5 //定义输入学生的个数

structstudent//定义学生结构体

{

charnum[6];

charname[8];

intscore[4];

floatavr;

}stu[N];

voidmain()

{

inti,j,max,maxi,sum;

floataverage;

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

{

printf("Inputscoresofstudent%d: ",i+1);//输入每个学生的数据

printf("NO.:");

scanf("%s",stu[i].num);

printf("name:");

scanf("%s",stu[i].name);

for(j=0;j<3;j++)

{

printf("score%d:",j+1);

scanf("%d",&stu[i].score[j]);

}

}

average=0;

max=0;

maxi=0;

for(i=0;i<3;i++)//求平均数

{

sum=0;

for(j=0;j<3;j++)

sum+=stu[i].score[j];

stu[i].avr=sum/3.0;

average+=stu[i].avr;

if(sum>max)

{

max=sum;

maxi=i;

}

}

average/=N;

printf(" NO. name score1 score2 score3 average ");

for(i=0;i<N;i++)//输出每个学生的信息

{

printf("%5s%8s",stu[i].num,stu[i].name);

for(j=0;j<3;j++)

printf("%9d",stu[i].score[j]);

printf("%8.2f ",stu[i].avr);

}

printf("average=%7.2f ",average);

printf("Thehighestscoreis:%s,scoretotal:%d.",stu[maxi].name,max);

}

验证吧~~

热点内容
武汉大学学生会辅导员寄语 发布: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