c语言程序上机实习报告Word格式.docx

上传人:b****3 文档编号:15828074 上传时间:2022-11-16 格式:DOCX 页数:40 大小:74.29KB
下载 相关 举报
c语言程序上机实习报告Word格式.docx_第1页
第1页 / 共40页
c语言程序上机实习报告Word格式.docx_第2页
第2页 / 共40页
c语言程序上机实习报告Word格式.docx_第3页
第3页 / 共40页
c语言程序上机实习报告Word格式.docx_第4页
第4页 / 共40页
c语言程序上机实习报告Word格式.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

c语言程序上机实习报告Word格式.docx

《c语言程序上机实习报告Word格式.docx》由会员分享,可在线阅读,更多相关《c语言程序上机实习报告Word格式.docx(40页珍藏版)》请在冰豆网上搜索。

c语言程序上机实习报告Word格式.docx

完成日期2011/12/29

一、分析设计与说明

分别建立两个数据文件

文件1(bjcj.txt)用于存放学生成绩;

文件2(kcxf.txt)用于存放课程学分;

文件3(xsxx、txt)用于存放学生信息。

程序设计思想

(1)学生成绩管理系统

1读入原始数据并显示(将其读入另外的“grcj.txt”中);

2编写函数用于计算平均分及名次(将其读入另外的”bjnpm.txt”中);

每个学生各科分数乘以相应的学分并相加除以学分总和;

先令每个学生的名次都

是1,在把一个学生的加权平均分与其他的所有学生的进行比较,遇到一个比

该学生平均分高的,该学生的名次加1。

循环依次得出全班人的名次;

并将这种

结果输出到文本文件bjnpm.txt

3编写函数计算分数段人数(将其读入另外的”gkpjf.txt”中);

先令每一个分数段(>

=90;

>

=80;

=70;

=60;

<

60)的人数都是0,然后利用循环结

构,遇到一个在某个分数段的成绩,那个分数段的计数变量加1,最后可得每门

科目每个分数段人数;

并将这种结果输出到文本文件gkpjf.txt

4利用循环结构,将所有人的同一科成绩相加,再除以总人数,课程平均.txt中;

编写函数统计不及格情况(将其读入另外的”bjgxs.txt”中);

5利用循环,将每个人的各科成绩和60相比较,若小于60,则输出名单(学号、

姓名、不及格课程名称、课程学分及成绩)结果存放在文本文件:

bujige.txt

6编写函数输出优秀学生(将其读入另外的”优秀干部.txt”中);

1.平均分≥90,2.名次在本班前三名,3.平均分≥85,并且至少有一门课的成绩为100分,4平均分≥85,并且至少有二门课的成绩为≥90分。

将上述条件作为逻辑或的判别式,找到符合条件的所有学生,输出并同时存放到优秀干部.txt中;

程序实现功能

1)学生成绩管理系统

1.班级成绩单查看见文件(bjcj.txt);

2.课程学分详情见(kcxf.txt);

3.班级成绩排名表单(bjnpm.txt);

4.成绩分数分布段见(gkpjf.txt)

5.课程平均分见(bjxx.txt)

6.不及格学生的名单(bjgxs.txt);

7.优秀生的名单(优秀干部.txt);

8.退出。

(3).程序框

一.主菜单功能模块图

二.一级菜单结构图

9.返回上级菜单

3.计算分数段人数

作分布图

返回上一级菜单

大物

C语言

制图

英语

数学

四.源程序清单

#include<

stdio.h>

#include<

stdlib.h>

math.h>

string.h>

#defineM30

structstudent

{longnum;

charname[20];

floatscore[5];

floataver;

introw;

intp1;

intp2;

}stu[M];

structchengji

{intnum;

floatfen;

}course[5];

structinforma

charsex[3];

intage;

charpoisition[20];

}infor[M];

structfenduan

{intp;

intq;

intr;

ints;

intl;

}count[5];

voidmain()

{intsection1();

intsection2();

intsection3();

/*主菜单*/

charch1;

system("

graftabl936"

);

do{clrscr();

/*清屏*/

printf("

\n\n\n\n\n\n\n\n\n"

**************C语言程序设计上机实习****************\n"

---------------------------------------------------\n\n"

1学生成绩管理\n\n"

2破译密码\n\n"

3组成大字符\n\n"

4退出\n\n"

输入选择序号\n"

while((ch1=getchar(),ch1!

='

1'

&

ch1!

2'

&

ch1!

3'

4'

));

switch(ch1)

{case'

:

section1();

break;

case'

section2();

case'

section3();

exit(0);

}

}while

(1);

intsection1()/*第1个2级菜单*/

{charch21;

voidfunction1_1();

voidfunction1_2();

voidfunction1_3();

voidfunction1_4();

voidfunction1_5();

voidfunction1_6();

voidfunction1_7();

\n\n\n\n\n\n\n\n\n\n"

********************学生成绩管理系统**********************\n"

------------------------------------------------------------------\n\n"

1.读入原始数据并显示2.计算平均分及名次\n\n"

3.输出课程平均分和各分数段人数4输出男生和女生课程平均成绩\n\n"

5.统计不及格情况6.输出优秀学生\n\n"

7.输出优秀学生干部8.返回上级菜单\n\n"

while((ch21=getchar(),ch21!

ch21!

5'

6'

7'

8'

));

switch(ch21)

function1_1();

function1_2();

function1_3();

function1_4();

function1_5();

function1_6();

function1_7();

return(0);

}

intsection2()/*第2个2级菜单*/

{charch22;

voidfunction2_1();

printf("

*****************破译密码****************\n"

----------------------------------------------------------------\n"

1.运行\n\n"

2.返回上级菜单\n\n"

while((ch22=getchar(),ch22!

ch22!

));

switch(ch22)

function2_1();

intsection3()/*第3个2级菜单*/

{charch23;

voidfunction3_1();

*****************组成大字符****************\n"

-------------------------------------------------\n"

while((ch23=getchar(),ch23!

ch23!

switch(ch23)

function3_1();

voidfunction1_1()

{inti,j;

FILE*fp,*fp1;

charstr[100];

if((fp=fopen("

bjcj.txt"

"

r"

))==NULL)

{printf("

connotopenthisfile\n"

if((fp1=fopen("

grcj.txt"

w"

{printf("

exit(0);

fgets(str,100,fp);

for(i=0;

i<

M;

i++)

{

fscanf(fp,"

%ld%s"

&

stu[i].num,stu[i].name);

for(j=0;

j<

5;

j++)

%f"

stu[i].score[j]);

序号姓名英语数学大学物理机械制图C程序设计"

fprintf(fp1,"

\n"

{if(i%10==0)getch();

%-11

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 起诉状

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1