程序设计基础实践教学课题报告Word文件下载.docx

上传人:b****5 文档编号:20942112 上传时间:2023-01-26 格式:DOCX 页数:15 大小:219.13KB
下载 相关 举报
程序设计基础实践教学课题报告Word文件下载.docx_第1页
第1页 / 共15页
程序设计基础实践教学课题报告Word文件下载.docx_第2页
第2页 / 共15页
程序设计基础实践教学课题报告Word文件下载.docx_第3页
第3页 / 共15页
程序设计基础实践教学课题报告Word文件下载.docx_第4页
第4页 / 共15页
程序设计基础实践教学课题报告Word文件下载.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

程序设计基础实践教学课题报告Word文件下载.docx

《程序设计基础实践教学课题报告Word文件下载.docx》由会员分享,可在线阅读,更多相关《程序设计基础实践教学课题报告Word文件下载.docx(15页珍藏版)》请在冰豆网上搜索。

程序设计基础实践教学课题报告Word文件下载.docx

自评

教师

评定

1、编写了主函数Voidmain()和主要用于实现一些相关的功

能的函数Voidmixed(intm,intn)并写了实验报告

2、编写了函数IntIntput(intn)和Voidsort(intn)

3、编写了函数Voidstati(intn)

4、编写了Voidskim(intn)和Voidsearch(intn,charm[])

设计说明与功能描述(基本思路及关键语句说明)

该函数的功能是:

(1)选项菜单集成各功能函数模块

(2)录入学生成绩(姓名、学号、语文、数学成绩,总分自动计算)

(3)按总分排名次

(4)按姓名查找某学生成绩

(5)统计各课程的平均分、及格率、最高分、最低分

(6)打印成绩表

基本思路

主要通过主函数main()调用子函数input(),skim(),search(),sort(),stati(),mixed()来分别实现题目要的功能

关键语句说明见程序旁注解

组长签名2010年7月15日

教师评语

教师签名:

2010年月日

《程序设计基础》课程综合设计实践教学课题报告要求

1、系统概述

主要解决问题

基本思路:

主要通过主函数main()调用子函数input(),skim(),search(),sort(),stati(),mixed()来分别实现题目要的功能

关键语句说明见程序旁注解。

2、数据结构设计

要说明本程序或数据表定义、连联中用到的所有数据类型的定义,给出变量名及类型(如结构体、数组)的设计,并明确说明:

(1)数据输入的形式和输入值的范围;

(2)数据输出的形式。

定义结构体

Typedefstructmark

{

Doubleyuwen;

Doubleshuxue;

}

Typedefsttruct

Longnumber;

Charname[20];

Doublesum;

Doubleaver;

}student;

Studentstu[N];

定义全局变量

Doubleymin,ymax,smin,smax,yper,sper,yaver=0,saver=0;

主要函数

IntIntput(intn);

Voidskim(intn);

Voidsearch(intn,charm[]);

Voidsort(intn);

Voidstati(intn);

Voidmixed(intm,intn);

Voidmain();

3、模块设计

IntIntput(intn);

主要用于实现索要输入的学生人数;

1主要来实现打印学生信息;

2主要用于实现查找相关学生信息;

3主要是对学生信息排序;

4主要用于对相关课程统计平均分,及格率,最高分,最低分

主要用于实现一些相关的功能。

Voidmain()主函数

4.调试运行及操作说明

(1)显示欢迎界面和并且提示要输入学生的数目

(2)输入学生数后就可以输入相应的信息了。

(3)输入学生的成绩

(4)确定要实现的功能选项

(5)选功能1后

(6)选功能2后

(7)选择功能3后,程序会提示你输入要查的学生的姓名

(8)选择功能4后

5、总结和体会

完成了这次C语言设计,我收获很多,体会也很多,要学好一门学科,没有刻苦钻研的精神是不行的,只有在不断的尝试中,不断尽力失败,然后又不断的尝试才能成功。

要完成一个优秀的程序,必须熟练掌握各种语言的特点和用法,要学会举一反三,充分实现c语言的灵活性,在平时的学习实践中,要不断的动脑筋,学活学用,要善于反问,善于思考。

要学好C语言光知识是不够的,还得有经验,上机操作的经验,只有大脑中有经验,在碰到问题是才有许多解决问题的办法,然后才能去尝试。

我们也清楚的知道21世纪是挑战和机遇并存,没有足够的知识储备将会被历史淘汰,C语言也是在国外广泛用用的一门计算机语言,语言功能丰富,表达能力强,使用灵活方便,具有较高的语言有点,同时我觉得C语言是理论和实践相结合的课程,在不断的编写中去思考。

我觉得在编写一个较大的c语言程序时应该把他分成几个小程序来看,这样就容易了。

程序设计过程犹如解决一个实际问题,从实际的角度去出发,我们可以这样来看,首先了解这个问题的基本要求;

其次,要从这个问题的要害出发,从前到后一个一个的解决每个问题的要求。

即:

丛输入开始,这种考虑如何输入如何输出,在这过程中,可以确定所要的变量,数据,函数,然后确定处理过程-算法,可得最后结论。

总之,要学好C语言,一定要认真,踏实,细心。

没有一丝不苟的精神是不行的,没有刻苦钻研的恒心必将不会有一丝的成功的。

最后感谢老师对我的教导。

(1)组长:

组员:

(2)6、程序代码

#include<

stdio.h>

stdlib.h>

string.h>

#defineN175

typedefstructmark//定义成绩结构体

doubleyuwen;

doubleshuxue;

}mark;

typedefstruct//定义学生信息结构体

longnumber;

charname[20];

doublesum;

doubleaver;

structmarkachie;

studentstu[N];

//定义结构体数组

doubleymin,ymax,smax,smin,yper,sper,yaver=0,saver=0;

//定义全局变量

intinput()//学生信息输入函数

inti,n;

printf("

请输入你要输入的学生数:

\n"

);

scanf("

%d"

&

n);

for(i=1;

i<

=n;

i++)

{

请输入第%d个学生的信息(包括学号、姓名、语文、数学的成绩)\n"

i);

scanf(

"

%ld%s%lf%lf"

&

stu[i].number,

stu[i].name,

stu[i].achie.yuwen,

stu[i].achie.shuxue

);

}

return(n);

voidskim(intn)//学生信息浏览函数

inti;

列出的学生信息依次为学号、姓名、语文、数学的成绩、总分、平均分\n"

stu[i].sum=stu[i].achie.yuwen+stu[i].achie.shuxue;

stu[i].aver=stu[i].sum/2.0;

第%d个学生的信息为:

printf(

%d\t%s\t%lf\t%lf\t"

stu[i].number,

stu[i].achie.yuwen,

stu[i].achie.shuxue

%lf\t%lf\n"

stu[i].sum,stu[i].aver);

voidsearch(intn,charm[])//相关学生信息查找函数

if(strcmp(stu[i].name,m)==0)

break;

if(i>

n)

系统查找不到相应学生的信息,请重新输入\n"

else

你要查询的学生的信息是:

"

stu[i].number,stu[i].name,stu[i].achie.yuwen,stu[i].achie.shuxue);

voidsort(intn)//学生信息排序函数

inti,j;

studenttemp;

for(j=i+1;

j<

j++)

if(stu[i].sum>

stu[j].sum)

temp=stu[i];

stu[i]=stu[j];

stu[j]=temp;

按学生的总分升序排序后的结果是:

voidstati(intn)//学生相关信息的统计函数

inti,a=0,b=0;

ymin=stu[1].achie.yuwen;

smin=stu[1].achie.shuxue;

ymax=stu[1].achie.yuwen;

smax=stu[1].achie.shuxue;

if(stu[i].achie.yuwen<

ymin)

ymin=stu[i].achie.yuwen;

if(stu[i].achie.yuwen>

ymax)

ymax=stu[i].achie.yuwen;

if(stu[i].achie.shuxue<

smin)

smin=stu[i].achie.shuxue;

if(stu[i].achie.shuxue>

smax)

ymin=stu[i].achie.shuxue;

=60)a++;

=60)b++;

saver+=stu[i].achie.shuxue/2.0;

yaver+=stu[i].achie.yuwen/2.0;

yper=(double)a/n;

sper=(double)b/n;

语文的平均分、及格率、最高分、最低分分别为:

%lf\t%lf\t%lf\t%lf\n"

yaver,yper,ymax,ymin);

数学的平均分、及格率、最高分、最低分分别为:

saver,sper,smax,smin);

voidmixed(intm,intn)//实现相应功能选择的函数

{

chark[N];

switch(m)

case1:

skim(n);

case2:

stati(n);

case3:

printf("

请输入你要查询的学生的姓名:

%s"

k);

search(n,k);

case4:

sort(n);

case5:

exit(0);

voidmain()//主函数,打印菜单……

intn,m;

欢迎进入学生成绩管理系统\n"

==================================\n"

\n\t为使系统正常工作请先按提示输入学生信息\n\n"

n=input();

n);

do

请选择你要本系统实现的功能\n"

1:

学生信息浏览功能\n"

2:

统计各课程的平均分、及格率、最高分、最低分\n"

3:

单用户信息查询功能\n"

4:

排序功能(按学生总分绩进行排序)\n"

5:

安全退出\n"

\t\t\t\t\t\t请输入你要实现的功能选项:

m);

if(m<

0||m>

4)

else

mixed(m,n);

}while

(1);

}

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

当前位置:首页 > 农林牧渔 > 林学

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

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