问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言程序设计实验报告完整版

发布网友 发布时间:2022-04-29 10:00

我来回答

5个回答

热心网友 时间:2022-06-25 21:04

这个题目很简单!

你可以把我这个程序的输出部分修改一下(不修改也可以)
程序如下:

#include <stdio.h>

#define STU_NUM 10//学生数目
#define SCORE_NUM 3//课程数目

typedef struct /*定义结构体数组*/
{
char num[20]; /*学号*/
char name[20]; /*姓名*/
float score[SCORE_NUM]; /*成绩*/
float total;//总分
float average;//平均分
} Student;

Student stu[STU_NUM];

//输入学生信息
void input()
{
int i,j;

printf("请输入%d个学生的信息:\n",STU_NUM);
for(i=0;i<STU_NUM;i++)
{
printf("学号:");
scanf("%s",stu[i].num);
printf("姓名:");
scanf("%s",stu[i].name);
for(j=0;j<SCORE_NUM;j++)
{
printf("科目%d的成绩:",j+1);
scanf("%f",&stu[i].score[j]);
}
}
}

//输出学生信息
void output(void)
{
int i,j;

for(i=0;i<STU_NUM;i++)
{
printf("学生的信息如下:\n");
printf("学号:%s\n",stu[i].num);
printf("姓名:%s\n",stu[i].name);
for(j=0;j<SCORE_NUM;j++)
{
printf("科目%d的成绩:%f\n",j+1,stu[i].score[j]);
}
printf("总分:%f\n",stu[i].total);
printf("平均分:%f\n",stu[i].average);
}
}

//计算总分和平均分
void process()
{
int i,j;

for(i=0;i<STU_NUM;i++)
{
stu[i].total=0;
for(j=0;j<SCORE_NUM;j++)
{
stu[i].total+=stu[i].score[j];
}
stu[i].average=stu[i].total/SCORE_NUM;
}
}

//按总分进行排序(冒泡法)
void sort()
{
Student tStu;
int i,j;

for(i=0;i<STU_NUM;i++)
{
for(j=STU_NUM-1;j>i;j--)
{
if(stu[j].total>stu[j-1].total)
{
tStu=stu[j];
stu[j]=stu[i];
stu[i]=tStu;
}
}
}
}

main()
{
input();
process();
sort();
output();
}

热心网友 时间:2022-06-25 21:04

以前做过,时间太长了忘记了,你给的分太少了。人家像这样的都是100多200分的

热心网友 时间:2022-06-25 21:05

解决不了

热心网友 时间:2022-06-25 21:05

实验题目:
输入一个班10个学生的学号和每个学生考试三门功课(数学、英语、计算机基础)的成绩。编程计算出每个学生的总分和平均分,并按学生成绩优劣排序,最后打印一张按高分到低分名次排序的成绩单。要求:
1)排序用一个函数实现。
2)打印的成绩单表项包括:序号,学号、数学、英语、计算机、总分、平均分。
3)按实验报告电子模板格式填写实验内容。
实验目的
源程序清单:
(调试好的源程序代码)
#include
<stdio.h>
#include
<stdlib.h>
#define
STU_NUM
10
/*宏定义学生的数量*/
struct
student
/*定义一个结构体用来存放学生学号、三门课成绩、总分及平均成绩*/
{
char
stu_id[20];
/*学生学号;*/
float
score[3];
/*三门课成绩;*/
float
total;
/*总成绩;*/
float
aver;
/*平均成绩;*/
};
/*排序用一个函数来实现*/
void
SortScore(student
*stu,int
n)
{
student
stud;
for(int
i
=
0;
i
<
n-1;
i++)
for(int
j
=
i+1
;
j
<
n;
j++)
{
if(stu[i].total
<
stu[j].total)
{
stud
=
stu[i];
stu[i]
=
stu[j];
stu[j]
=
stud;
}
}
}
int
main(
)
{
student
stu[STU_NUM];
/*创建结构体数组中有10个元素,分别用来保存这10个人的相关信息。*/
/*输入这十个学生的相关信息*/
for(int
i
=
0;
i<STU_NUM;
i++)
{
printf("请输入第%d个学生的学号:",i+1);
scanf("%s",&stu[i].stu_id);
printf("输入第%d个学生的数学成绩:",i+1);
scanf("%f",&stu[i].score[0]);
printf("输入第%d个学生的英语成绩:",i+1);
scanf("%f",&stu[i].score[1]);
printf("输入第%d个学生的计算机成绩:",i+1);
scanf("%f",&stu[i].score[2]);
stu[i].total
=
stu[i].score[0]+stu[i].score[1]+stu[i].score[2];
stu[i].aver
=
stu[i].total/3;
}
printf("\n");
SortScore(stu,STU_NUM);/*调用排序函数*/
/*输出排序后的各学生的成绩*/
for(i
=
0
;
i
<
STU_NUM;
i++)
{
printf("序号:
%d\t",i);
printf("学号:%s\t",stu[i].stu_id);
printf("数学:%f\t",stu[i].score[0]);
printf("英语:%f\t",stu[i].score[1]);
printf("计算机:%f\t",stu[i].score[2]);
printf("平均成绩:%f\t",stu[i].aver);
printf("总分:%f\t",stu[i].total);
printf("\n\n");
}
return
0;
}
主要标识符说明:
(源程序中主要标识符含义说明)
#define
STU_NUM
10
/*宏定义学生的数量*/
struct
student
/*定义一个结构体用来存放学生学号、三门课成绩、总分及平均成绩*/
{
char
stu_id[20];
/*学生学号;*/
float
score[3];
/*三门课成绩;*/
float
total;
/*总成绩;*/
float
aver;
/*平均成绩;*/
};
实验结果:
输入
:(只输入后面的数字,前面的文字是自己产生的)
请输入第1个学生的学号:001
输入第1个学生的数学成绩:1
输入第1个学生的英语成绩:1
输入第1个学生的计算机成绩:1
请输入第2个学生的学号:002
输入第2个学生的数学成绩:2
输入第2个学生的英语成绩:2
输入第2个学生的计算机成绩:2
请输入第3个学生的学号:003
输入第3个学生的数学成绩:3
输入第3个学生的英语成绩:3
输入第3个学生的计算机成绩:3
请输入第4个学生的学号:004
输入第4个学生的数学成绩:4
输入第4个学生的英语成绩:4
输入第4个学生的计算机成绩:4
请输入第5个学生的学号:005
输入第5个学生的数学成绩:5
输入第5个学生的英语成绩:5
输入第5个学生的计算机成绩:5
请输入第6个学生的学号:006
输入第6个学生的数学成绩:6
输入第6个学生的英语成绩:6
输入第6个学生的计算机成绩:6
请输入第7个学生的学号:007
输入第7个学生的数学成绩:7
输入第7个学生的英语成绩:7
输入第7个学生的计算机成绩:7
请输入第8个学生的学号:008
输入第8个学生的数学成绩:8
输入第8个学生的英语成绩:8
输入第8个学生的计算机成绩:8
请输入第9个学生的学号:009
输入第9个学生的数学成绩:9
输入第9个学生的英语成绩:9
输入第9个学生的计算机成绩:9
请输入第10个学生的学号:010
输入第10个学生的数学成绩:10
输入第10个学生的英语成绩:10
输入第10个学生的计算机成绩:10
输出:
序号:
0
学号:010
数学:10.000000
英语:10.000000
计算机:10.000000
平均成绩:10.000000
总分:30.000000
序号:
1
学号:009
数学:9.000000
英语:9.000000
计算机:9.000000
平均成绩:9.000000
总分:27.000000
序号:
2
学号:008
数学:8.000000
英语:8.000000
计算机:8.000000
平均成绩:8.000000
总分:24.000000
序号:
3
学号:007
数学:7.000000
英语:7.000000
计算机:7.000000
平均成绩:7.000000
总分:21.000000
序号:
4
学号:006
数学:6.000000
英语:6.000000
计算机:6.000000
平均成绩:6.000000
总分:18.000000
序号:
5
学号:005
数学:5.000000
英语:5.000000
计算机:5.000000
平均成绩:5.000000
总分:15.000000
序号:
6
学号:004
数学:4.000000
英语:4.000000
计算机:4.000000
平均成绩:4.000000
总分:12.000000
序号:
7
学号:003
数学:3.000000
英语:3.000000
计算机:3.000000
平均成绩:3.000000
总分:9.000000
序号:
8
学号:002
数学:2.000000
英语:2.000000
计算机:2.000000
平均成绩:2.000000
总分:6.000000
序号:
9
学号:001
数学:1.000000
英语:1.000000
计算机:1.000000
平均成绩:1.000000
总分:3.000000
实验环境:
(调试程序所使用的软硬件环境)
软件环境:VC6.0
硬件王法:CPU:赛扬2.24,内存:512M
这个报告我给你写好了,直接拷贝就好了,你看看

热心网友 时间:2022-06-25 21:06

实验题目:
输入一个班10个学生的学号和每个学生考试三门功课(数学、英语、计算机基础)的成绩。编程计算出每个学生的总分和平均分,并按学生成绩优劣排序,最后打印一张按高分到低分名次排序的成绩单。要求:
1)排序用一个函数实现。
2)打印的成绩单表项包括:序号,学号、数学、英语、计算机、总分、平均分。
3)按实验报告电子模板格式填写实验内容。

实验目的

源程序清单:

(调试好的源程序代码)
#include <stdio.h>
#include <stdlib.h>
#define STU_NUM 10 /*宏定义学生的数量*/

struct student /*定义一个结构体用来存放学生学号、三门课成绩、总分及平均成绩*/
{
char stu_id[20]; /*学生学号;*/
float score[3]; /*三门课成绩;*/
float total; /*总成绩;*/
float aver; /*平均成绩;*/
};

/*排序用一个函数来实现*/
void SortScore(student *stu,int n)
{
student stud;
for(int i = 0; i < n-1; i++)
for(int j = i+1 ; j < n; j++)
{
if(stu[i].total < stu[j].total)
{
stud = stu[i];
stu[i] = stu[j];
stu[j] = stud;
}
}
}

int main( )
{
student stu[STU_NUM]; /*创建结构体数组中有10个元素,分别用来保存这10个人的相关信息。*/

/*输入这十个学生的相关信息*/
for(int i = 0; i<STU_NUM; i++)
{
printf("请输入第%d个学生的学号:",i+1);
scanf("%s",&stu[i].stu_id);
printf("输入第%d个学生的数学成绩:",i+1);
scanf("%f",&stu[i].score[0]);
printf("输入第%d个学生的英语成绩:",i+1);
scanf("%f",&stu[i].score[1]);
printf("输入第%d个学生的计算机成绩:",i+1);
scanf("%f",&stu[i].score[2]);
stu[i].total = stu[i].score[0]+stu[i].score[1]+stu[i].score[2];
stu[i].aver = stu[i].total/3;

}
printf("\n");

SortScore(stu,STU_NUM);/*调用排序函数*/

/*输出排序后的各学生的成绩*/
for(i = 0 ; i < STU_NUM; i++)
{
printf("序号: %d\t",i);
printf("学号:%s\t",stu[i].stu_id);
printf("数学:%f\t",stu[i].score[0]);
printf("英语:%f\t",stu[i].score[1]);
printf("计算机:%f\t",stu[i].score[2]);
printf("平均成绩:%f\t",stu[i].aver);
printf("总分:%f\t",stu[i].total);
printf("\n\n");
}

return 0;

}

主要标识符说明:

(源程序中主要标识符含义说明)
#define STU_NUM 10 /*宏定义学生的数量*/

struct student /*定义一个结构体用来存放学生学号、三门课成绩、总分及平均成绩*/
{
char stu_id[20]; /*学生学号;*/
float score[3]; /*三门课成绩;*/
float total; /*总成绩;*/
float aver; /*平均成绩;*/
};

实验结果:

输入 :(只输入后面的数字,前面的文字是自己产生的)

请输入第1个学生的学号:001
输入第1个学生的数学成绩:1
输入第1个学生的英语成绩:1
输入第1个学生的计算机成绩:1
请输入第2个学生的学号:002
输入第2个学生的数学成绩:2
输入第2个学生的英语成绩:2
输入第2个学生的计算机成绩:2
请输入第3个学生的学号:003
输入第3个学生的数学成绩:3
输入第3个学生的英语成绩:3
输入第3个学生的计算机成绩:3
请输入第4个学生的学号:004
输入第4个学生的数学成绩:4
输入第4个学生的英语成绩:4
输入第4个学生的计算机成绩:4
请输入第5个学生的学号:005
输入第5个学生的数学成绩:5
输入第5个学生的英语成绩:5
输入第5个学生的计算机成绩:5
请输入第6个学生的学号:006
输入第6个学生的数学成绩:6
输入第6个学生的英语成绩:6
输入第6个学生的计算机成绩:6
请输入第7个学生的学号:007
输入第7个学生的数学成绩:7
输入第7个学生的英语成绩:7
输入第7个学生的计算机成绩:7
请输入第8个学生的学号:008
输入第8个学生的数学成绩:8
输入第8个学生的英语成绩:8
输入第8个学生的计算机成绩:8
请输入第9个学生的学号:009
输入第9个学生的数学成绩:9
输入第9个学生的英语成绩:9
输入第9个学生的计算机成绩:9
请输入第10个学生的学号:010
输入第10个学生的数学成绩:10
输入第10个学生的英语成绩:10
输入第10个学生的计算机成绩:10

输出:

序号: 0 学号:010 数学:10.000000 英语:10.000000 计算机:10.000000
平均成绩:10.000000 总分:30.000000

序号: 1 学号:009 数学:9.000000 英语:9.000000 计算机:9.000000
平均成绩:9.000000 总分:27.000000

序号: 2 学号:008 数学:8.000000 英语:8.000000 计算机:8.000000
平均成绩:8.000000 总分:24.000000

序号: 3 学号:007 数学:7.000000 英语:7.000000 计算机:7.000000
平均成绩:7.000000 总分:21.000000

序号: 4 学号:006 数学:6.000000 英语:6.000000 计算机:6.000000
平均成绩:6.000000 总分:18.000000

序号: 5 学号:005 数学:5.000000 英语:5.000000 计算机:5.000000
平均成绩:5.000000 总分:15.000000

序号: 6 学号:004 数学:4.000000 英语:4.000000 计算机:4.000000
平均成绩:4.000000 总分:12.000000

序号: 7 学号:003 数学:3.000000 英语:3.000000 计算机:3.000000
平均成绩:3.000000 总分:9.000000

序号: 8 学号:002 数学:2.000000 英语:2.000000 计算机:2.000000
平均成绩:2.000000 总分:6.000000

序号: 9 学号:001 数学:1.000000 英语:1.000000 计算机:1.000000
平均成绩:1.000000 总分:3.000000

实验环境:

(调试程序所使用的软硬件环境)
软件环境:VC6.0
硬件王法:CPU:赛扬2.24,内存:512M

这个报告我给你写好了,直接拷贝就好了,你看看
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
十亿韩元折合人民币是多少阿? 邮政银行卡余额查询 邮政储蓄查询余额怎么查 艰难 的国运与雄健的国民读后感500(把以前与现在作对比) 初一下册人教版 艰难的国运与雄健的国民 读后感300字 今日头条哪个版本的有电脑版电脑版今日头条怎么下载 今日头条在电脑上如何安装今日头条怎样就安装到电脑上了 如何评价武庙? 武经总要前集概述 武经总要军事思想 程序设计实践的实验报告 求完整的c语言程序设计实验报告范文!! 实验报告怎样写啊? 实验二 顺序结构程序设计 好看的日本爱情片? 找一些好看的日剧要可看性强的.爱情片(最好是完结的) 日本经典爱情电影,近几年的和最新的如题 谢谢了 美国爱情片 在2013年冬天,韩国军人做爱被上级看见是什么电影 有乡村爱情一级电影 求几部少男少女爱情片 哪些电影里有坐爱情节 有谁知道台式电脑,怎么连宽带的? 电饭煲蒸红薯要隔水吗 电饭锅蒸红薯怎么做的做最好吃! 华为荣耀play 一直停留在蓝屏 显示honr是怎么回事? 华为荣耀play进入王者荣耀再返回其他软件,王者荣耀怎么又重启了? 荣耀play轻轻一摔就会重启怎么解决? 荣耀play一直重启 用电还很快 一会儿就没电了 充电的时候才不会重启? 我的荣耀play为什么会自动重启,重启后就有一大堆软件被自动安装被安装上 《C语言程序设计》课程实验报告 C++ 实验一总结报告 小米5splus和小米6哪个好 淘宝家具类店铺如何装修? 小米手机12会不会成为一代神机?为什么? 超级QQ秀家具店有哪几个 《摩尔庄园》地砖在哪买? 摩尔庄园家具在哪儿买? 土豆冻了发黑还能吃吗 诺亚传说商店有哪几类?开不同的店有分别吗? 谁给我加点符号 错别字家族 怎么开Q图表 华为mate30怎么格式化 如何 点两亮所有的标志? 华为mate30如何硬格式 一品牌家具专卖店允许卖另一个品牌吗,并将非专卖店名字的家具标志抹掉销售,构成法律责任吗 华为mate30pro格式化在哪里 qq浏览器一直解压中 有什么装修软件可以自己添加想要的家具及背景,但是比较业余好操作的? 找靓机验机晚上工作吗