当前位置:首页 » 考试成绩 » 用c语言编写求学生的平均成绩

用c语言编写求学生的平均成绩

发布时间: 2021-02-08 15:28:24

『壹』 C语言编写函数,求10个学生的平均成绩,使用数组

1、首先打开visual studio 2019软件,新建一个win32控制台程序。

『贰』 c语言编程实例:输入多个学生的成绩,求学生的平均成绩,并统计出超过平均分数的

没有悬赏么?
呵呵
最简单的易懂的方法是:在循环语句中用数组接收输入的成绩,接受的同时定义一个sum变量,让它自动加数组成绩,和定义一个i变量,用i++统计输入成绩的个数,然后sum/i的平均成绩,再用while循环数组,如何大于sum/i,输出~

『叁』 用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;

}

程序的运行结果:

(3)用c语言编写求学生的平均成绩扩展阅读:

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

结构体的定义形式为:

struct 结构体名{

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

};

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

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

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

『肆』 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;

}

『伍』 用c语言结构体编写函数,计算每个学生的平均成绩。

#include<stdio.h>
struct student
{
权long int num;
char name[8];
float score[3];
double ave;
}stu[2];
void fun(struct student * p)
{
double s;
int i,j;
for(i=0;i<2;i++)
{
s=0;
for(j=0;j<3;j++)
s+=p[i].score[j];
p[i].ave=s/3.0;
}
for(i=0;i<2;i++)
printf("Case #%d:ave= %4.2f\n",i+1,p[i].ave);
}

void main()
{
int i,j;
for(i=0;i<2;i++)
for(j=0;j<3;j++)
scanf("%f",&stu[i].score[j]);
fun(stu);
}

『陆』 用c语言编写求平均成绩(多门课多个学生)

这是我共享的一个程序和代码,你下载下来改一下就可以了,

这都是我写的,如果有问题或不合你的意思可以点我的名字 -物联网校企联盟技术部

『柒』 C语言:编写一个程序,从键盘输入10个学生成绩,求平均成绩。

/*
C语言:编写一个程序,从键盘输入10个学生成绩,求回平均答成绩
*/
#include<stdio.h>
#defineN10
intmain()
{
floatarr[N]={0.0},s=0.0;
inti;
for(i=0;i!=N;++i){//输入
scanf("%f",&arr[i]);
s+=arr[i];
}
printf("%0.2f ",s/N);//输出平均数
return0;
}

『捌』 用c语言编写程序:计算班级每位学生的平均成绩。

第一题:
#include "stdio.h"
float *Grade(float *num,int i) //用来冒泡排序 num传入数组指针,i传入数组个数
{
int j,k;
float temp;
for (j=0;j<i;j++)
for (k=0;k<i-j;k++)
{
if (num[k]<num[k+1])
{
temp=num[k];
num[k]=num[k+1];
num[k+1]=temp;
}
}
return num;
}
void main()
{
float num[100];
int i=0,j=0,iavg=0; //i=数组个数,j=循环,iavg=高于平均成绩人数
float avg=0,sum=0; //avg=平均成绩,sum=总成绩
printf("请输入成绩,按Ctrl+D结束:");
while (scanf("%f",&num[i])) //循环输入成绩
{
sum+=num[i];
i++;
}
avg=sum/i;
printf("平均分为%.1f\n",avg);
Grade(num,i);
printf("所有学生的成绩为:");
for (j=0;j<i;j++)
{
printf("%.1f ",num[j]);
if (num[j]>avg)
iavg++;
}
printf("\n高于平均人数的有%d人\n",iavg);
}
第二题:
#include "stdio.h"
int digit(int i,int *dinum)
{
int j=0,k=0;
while (i=0) //计算位数
{
dinum[k]=i%10; //将数字存入数组
i=i/10;
j++;k++;
}
return j;
}
void main()
{
int inum,dinum[10],i,j; //inum=整数 dinum=存各个数字的数组 i,j=循环需要
printf("请输入整数:");
scanf("%d",&inum);
j=digit(inum,dinum);
printf("该整数为 %d 位\n",j);
printf("数字分别为:");
for (i=j-1;i>=0;i--)
{
printf("%d ",dinum[i]);
}
}
第三题:
#include "stdio.h"
int fun(int *a)
{
int i=1,j=0;
for (i;i<1000;i++)
{
if ((i%7==0||i%11==0)&&!(i%7==0&&i%11==0))
{
a[j]=i;
j++;
}
}
return j;
}
void main()
{
int a[500],i,j;
j=fun(a);
for (i=0;i<j;i++)
{
printf("%d ",a[i]);
if (i%15==0)
printf("\n");
}
以上代码均在VC6.0中编译通过,现在1点了。后面的题以后再说

『玖』 用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;<br>char s1[20];<br>printf("------------------\n");<br>printf("1.按学号查询\n");<br>printf("2.退出本菜单\n");<br>printf("------------------\n");<br>while(1)<br>{ printf("请选择子菜单编号:");<br>scanf("%d",&item);<br>flag=0;<br>switch(item)<br>{<br>case 1:<br>printf("请输入要查询的学生的学号:\n");<br>scanf("%s",s1);<br>for(i=0;i<n;i++)<br>if(strcmp(stu[i].xuehao,s1)==0)<br>{ flag=1;<br>printf("该学生学号,姓名,性别,数学,语文,英语 分别为:\n");<br>printf(" %s %s %s %d %d %d",stu[i].xuehao,stu[i].name,<br>stu[i].sex,stu[i].ke1,stu[i].ke2,stu[i].ke3);<br>}
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);<br> printf("\n第 %d 个学生的性别:%s",i+1,stu[i].sex);<br> printf("\n第 %d 个学生的数学成绩:%d",i+1,stu[i].ke1);<br> printf("\n第 %d 个学生的语文成绩:%d",i+1,stu[i].ke2);<br> printf("\n第 %d 个学生的英语成绩:%d",i+1,stu[i].ke3);<br> printf("\n第 %d 个学生的平均成绩:%d",i+1,stu[i].pin);<br> }
}
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();
}
//平均数是排序后,输出的,如果你不想直接输入,那就不要对每个学生进行选择排序了

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