中南大学。
本科生课程设计报告书。
目录。一课程设计的目的、任务与要求3
二程序流程图4
三程序清单及解释11
四实践心得、体会27
一课程设计的目的、任务与要求。
在本课程设计是 “c语言程序设计”课程学习的一个关键环节。它是根据教学计划的要教师的指导下,对学生实施程序设计训练的必要过程,是对前期课堂学习内容的综合应用及其效果的检验和提高。其目的在于培养学生综合运用理论知识来分析和解决实际问题的能力、以及严谨的科学态度和良好的程序设计习惯。
本次设计,要求设计者基于结构化程序设计思想和所用c语言开发环境与工具,并运用“软件工程”和“数据结构”中的有关概念和方法,针对具体设计题和要求,分析功能要求,划分功能模块,用链表结构设计功能模块函数,以菜单方式调用相应功能模块来实现信息和数据处理。本次设计时间为三周,要求独立完成,具体任务如下:
1、学习、掌握采用结构化程序设计思想进行turbo c (或win tc)环境下程序设计的方法;学习c语言的简单图形语句以及简单图形界面设计(参见参考文献)。
2、采用c语言设计一个“学生学习成绩管理系统”,上机编程、调试并演示该管理系统中的各功能模块(具体内容见四)。
3、设计完成后,每人必须按时提交与验收程序一致的、能按设计功能和性能要求运行的程序的清单,一份关于本次程序设计和使用介绍的纸质文档即程序设计说明书及个人总结(实践心得、体会等)。
二程序流程图。
1建立动态链表。
2 输出函数(输入数据)
3 删除1函数图(读出数据)
4,按学号删除流程图。
5 插入函数。
6 统计函数图。
7 统计最大和最小。
8 查找函数。
9 逻辑删除函数。
10 恢复函数。
一进入窗口的界面。
二菜单界面。
三程序清单及解释。
#include<>
#include<>
#include<>
#include<>
#include<>
#define null 0
#define len sizeof(struct student)
struct student
int num;
char name[20];
int english;
int math;
int c_yuyan;
int zong;
struct student *next;
int n,s[9];/把n做为全局变量,本文件各函数均可使用它*/
struct student *creat(void) /定义一个函数,创建链表*/
struct student *head;
struct student *p1,*p2;
n=0;p1=p2=(struct student *)malloc(len);/开辟一个新区间*/
head=null;
while(p1->num!=0)
p2->next=null;
return(head); 返回头地址*/
*保存数据到文件函数*/
void s**e(student *head)
file *fp定义指向文件的指针*/
student *p定义移动指针*/
char outfile[10];
printf("enter outfile name,for example c:\\score");
scanf("%s",outfile);
if((fp=fopen(outfile,"wb"))null为输出打开一个二进制文件,为只写方式*/
printf("s**ing the file...n");
p=head移动指针从头指针开始*/
while(p!=null如p不为空*/
fclose(fp关闭文件*/
printf("s**e the file successfully!");
* 从文件读数据函数*/
student *load()
student *p1,*p2,*head=null定义记录指针变量*/
file *fp定义指向文件的指针*/
char infile[10];
printf("enter infile name,for example c:\\score");
scanf("%s",infile);
if((fp=fopen(infile,"rb"))null打开一个二进制文件,为只读方式*/
printf("loading the file!");
p1=(student *)malloc(len开辟一个新单元*/
if(!p1)
head=p1申请到空间,将其作为头指针*/
while(!feof(fp循环读数据直到文件尾结束*/
p2->next=null最后一个结点的后继指针为空*/
fclose(fp);
printf("you h**e success to read data from the file!");
return (head);
struct student print(struct student *head)
struct student *p1;
clrscr();
p1=head;
for(;p1!=null;p1=p1->next)
printf("no. name english math c_yuayn zong");
p1=head;
if(head!=null)
dowhile(p1!=null);
C语言课程课程设计
课程设计报告。课程名称 c语言程序设计 系别 xxx 专业班级 xxx班 学号 xxxxxxxxxx 姓名 xxx 课程题目 10或100以内儿童加减乘除算术游戏。完成日期 2013.6.14 19 指导老师 xxx 2013年 6月 21日。附件 一 程序模块图。二 源程序。include inc...
C语言课程设计
目录。1 c语言程序课程设计教学大纲。2 c语言程序课程设计说明书。3 c语言程序课程设计报告 模板 4 c语言程序课程设计成绩评定表。xx xx学院。课程教学大纲。课程名称 c语言程序课程设计。适用专业 课程类别 专业基础课。制订时间 2010年11月 计算机科学与技术系制。c语言程序课程设计教学...
C语言课程设计
目录。1 c语言程序课程设计教学大纲。2 c语言程序课程设计说明书。3 c语言程序课程设计报告 模板 4 c语言程序课程设计成绩评定表。珠海学院。课程教学大纲。课程名称 c语言程序课程设计。适用专业 2010级计算机科学与技术系各专业。课程类别 专业基础课。制订时间 2010年11月 计算机科学与技...