C语言课程设计——教材管理系统
- 格式:doc
- 大小:161.00 KB
- 文档页数:17
c语言课课程设计详细设计一、教学目标本课程旨在通过学习C语言编程,让学生掌握C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识,培养学生编程思维和解决问题的能力。
通过本课程的学习,学生应达到以下目标:1.知识目标:–理解C语言的基本语法和编程规范;–掌握C语言的数据类型、运算符和控制结构;–学会使用C语言进行函数的定义和调用;–了解C语言的数组、字符串和指针等高级概念。
2.技能目标:–能够运用C语言编写简单的程序,解决实际问题;–具备阅读和理解C语言程序的能力;–掌握C语言的调试和优化技巧;–能够运用编程思维解决问题。
3.情感态度价值观目标:–培养学生对计算机科学的兴趣和热情;–培养学生的创新精神和团队合作意识;–培养学生良好的编程习惯和职业道德。
二、教学内容根据课程目标,本课程的教学内容主要包括以下几个方面:1.C语言的基本语法和编程规范;2.数据类型、运算符和控制结构;3.函数的定义和调用;4.数组、字符串和指针等高级概念。
具体的教学大纲如下:第1-2周:C语言的基本语法和编程规范;第3-4周:数据类型、运算符和控制结构;第5-6周:函数的定义和调用;第7-8周:数组、字符串和指针等高级概念。
三、教学方法为了提高教学效果,本课程将采用多种教学方法,包括:1.讲授法:通过讲解和示例,让学生掌握C语言的基本知识和编程技巧;2.讨论法:通过小组讨论和问题解答,培养学生的编程思维和解决问题的能力;3.案例分析法:通过分析实际案例,让学生了解C语言在实际应用中的重要性;4.实验法:通过上机实验,让学生动手编写C语言程序,提高编程能力。
四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:《C程序设计语言》(K&R);2.参考书:《C Primer Plus》、《C和指针》;3.多媒体资料:教学PPT、视频教程、在线编程练习;4.实验设备:计算机、编程环境(如Visual Studio、Code::Blocks等)。
HUNAN UNIVERSITY C语言程序训练报告【设计目的】图书信息包括:读者登录号、管理员登录号、图书编号、作者名、种类、出版社、图书库存、图书借出数目等。
图书信息管理系统,使之能提供以下功能:1)系统以菜单方式工作2)读者注册功能3)读者登录功能4)读者借书还书功能5)查询读者借阅记录6)查询在管图书信息功能7)修改密码功能8)管理员登录功能9)增加、修改、删除图书功能10)查看图书信息功能【设计思路】根据题目要求,应当把图书信息用结构体形式输入,应该提供以下结构体和文件的输入等操作:在程序中需要实现图书信息录入,浏览,查询,删除和修改等功能的操作,所以需要建立相应的模块来实现:另外还需提供选择菜单实现功能,在运行时达到所要求的目的;管理员和读者登录界面及各自功能应有不同的实现。
【总体设计】【详细设计】1.主函数主函数设计要求简洁,只提供部分提示语和函数的调用源代码为//rkou。
c 程序的入口#include<stdio。
h>#include〈stdlib.h〉#include〈string。
h>#include<conio.h〉#include"head.h”#include”fuc.h"#include”picture。
h"#include”jiangzhuo1.h"#include”output。
h"main(){ int i=setup();switch (i){ case 0: while(n<50){ conects(n);}default:eros(i);}system("pause”);}2.程序中全局变量声明定义,以及所有函数声明源代码为struct book //图书结构体声明{ char name[50],classic[10],writer[20]; //书名,类别,作者int jn; //借出数量int zn; //在馆数量int bh; //图书编号};struct information //管理员和读者结构体声明{char name[10],no[12],key[10]; //姓名,账号,密码};struct show //图书借阅记录的结构体声明{char name1[10],name2[50],writer[20],no[12]; //书名,读者姓名,书的作者,读者账号int bh,o; //图书编号,借阅状况(未还,已还)};//以下为用到的全局变量struct book bk;struct information aa,rr;struct information stu[100];struct book bb[100];struct information ad[100];struct show ss[100];int i,j,k,s;int n=0;int x;FILE *fp;//以下函数主要功能:方便窗口与用户之间交换信息int regst();void password(char *a,int b,int j);//登陆时的输入函数void examine(int *a,int b); //保证键入的数据是数字void changepaw(int a,int b); //修改密码用到的提示函数void inputs0(); //输出图书类别以供用户选择void inputs1(int a,int b,int c,int d,int e); //方便用户输入图书各项信息(如书名,编号)void inputs2(int a,int b,int c); //方便用户输入管理员的信息(如账号姓名)void inputs3(int a,int b,int c);//方便用户输入读者的信息(如账号姓名)void eros(int i); //错误显示函数,操作一旦出错,则会出现相应的错误信息void conects(int j); //连接函数,选择界面//一下函数主要用于改变文件的内容并保存int setup(); //数据初始化函数int xzc(char no[12],char key1[10],char key2[10],char name[10]);//读者注册函数int exam(char no[10],char key[10],int n);//密码账号检验函数int mp(char no[12],char key1[10],char key2[10],char key3[10],int n); //密码修改函数void paixu(); //对图书按照编号从小到大的顺序进行排列int sc(int bh); //管理员删除图书信息函数int zj(struct book bb); //管理员增加图书信息函数int xg(struct book bb);//管理员修改图书信息函数int js(int bh,char no[12]); //借书函数int hs(int bh,char no[12]); //还书函数int bh1(int bh); //判断该编号的图书信息是否存在函数void bh2(int bh); //按照图书编号显示图书信息函数int sm1(char name[50]);//判断是否存在该名字的图书信息函数void sm2(char name[50]); //按照图书名字显示图书信息函数int zz1(char writer[20]); //判断是否存在该作者的图书信息函数void zz2(char writer[20]);//按照图书作者显示图书信息函数void lb(char classic[10]); //按类别显示图书信息int rck1(int bh);//判断该编号的图书的借书记录是否存在void rck2(int bh);//按编号显示图书借书情况int gck21(char no[12]);//判断该账号读者的借书记录是否存在void gck22(char no[12]); //按读者显示借书情况2void gck12(); //显示全部借书情况void gck23();//管理员查看所有书的信息void copy(int bh); // 按编图书编号将图书信息暂时保存在另外一个结构体里面void copy2(char no[12]); //按管理员账号将管理员信息暂时保存在另外一个结构体里面void copy3(char no[12]);//按读者账号将读者信息暂时保存在另外一个结构体里面//pic()函数:每个函数表示一个界面,conects函数将它们连接起来void pic0();void pic1();void pic2();void pic3();void pic4();void pic5();void pic6();void pic7();void pic8();void pic9();void pic10();void pic11();void pic12();void pic13();void pic14();void pic15();void pic16();void pic17();void pic18();void pic19();void pic20();void pic21();void pic22();void pic23();void pic24();void pic25();void pic26();void pic27();void pic29();void pic30();void pic31();void pic32();void pic33();void pic34();void pic35();void pic36();void pic37();void pic38();void pic39();void pic40();void pic41();void pic42();void pic43();void pic44();void pic45();void pic46();void pic47();void picc();3.用户输入以及界面反馈用到的功能函数源代码为int regst(){char num[12],paw1[10],paw2[10],name[10];int i;printf(”请输入账号\n(11字符以内,不能含有中文字符):\n”);password(num,0,11);printf(”输入您的密码\n(9字符以内,不能含有中文字符):\n");password(paw1,1,9);printf("请再次输入密码:\n”);password(paw2,1,9);printf("输入您的姓名:\n");gets(name);system("cls”);i=xzc(num,paw1,paw2,name);return i;}void password(char *a,int b,int j){ char c;int i=0;while((c=getch())!=’\r’){if(c==8){ printf(”\b \b”);if(i〉0)i-—;}else if(i<j){if(b)printf("*”);else printf("%c",c);a[i]=c;i++;}if(i==j){ printf("\a");}}a[i]='\0';printf("\n");}void examine(int *a,int b){ while(!scanf(”%d",a)){ while(getchar()!='\n’);printf("请输入数字!!\n");}rewind(stdin);if(b) system("cls”);}void changepaw(int a,int b){ int i;char c1[10],c2[10],c3[10];printf("请输入原密码\n”);password(c1,1,9);printf("请输入新密码\n");password(c2,1,9);printf(”请再次输入新密码\n”);password(c3,1,9);system("cls”);if(b){i=mp(aa。
C程序设计课程设计题目:学生选课系统专业班级:通信工程1班姓名:学号:指导教师:成绩:摘要学生选课系统是一个教育单位不可缺少的重要系统组成部分,它对于学校的决策者、管理者管理、查看课程来说都有至关重要,所以学生选课管理系统应该能够为广大学、师生提供充足的信息和快捷的课程选择过程,有助于学生选好每一门课程,此系统系统选课方便、快捷,用简单的界面来展示学生的选课信息,应用简单明了、存储量大、可靠性高、保密性好、寿命长、成本低等优点,可以极大的提高对学生信息管理的效率。
利用C语言开发,实现了简单的学生课程信息的录入、修改、查询、删除等操作,并且能够利用文件系统长久的保留原始数据。
目录一、需求分析 (1)二、总体设计 (1)三、详细设计 (2)1、数据定义......................................................... 错误!未定义书签。
2、算法流程图 (2)四、编码 (6)五、调试 (7)六、设计总结 (10)致谢 (11)参考文献 (12)附录 (13)一、需求分析语言文字描述系统要做什么数据结构可用结构体,包括课程和选修两个结构体,其中课程结构体成员结构体成员包括课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期。
选修结构体成员包括学号,课程编号,该结构体的建立主要是为了查询某门课程学生选修情况。
二、总体设计系统由哪几个功能模块构成,给出功能模块图。
C中模块化的工具是函数根据上面的需求分析,可以将这个系统的设计分为如下七大模块:选课模块、按学分查找模块、按编号查找模块、查看课程模块、查看选课情况模块、课程输入模块、完成选择模块。
三、详细设计1.数据定义2,算法流程图(1)录入课程信息表(2)课程管理(3)录入课程信息(4)学生信息管理(5)学生选课(6)系统信息及查看系统(7)退出系统四、编码1.struct couse * head1;结构2.void keyboardc()//录入课程子函数(从键盘录入)3.void filec()//录入键盘子函数(从文件录入)4.void inputc()//录入课程主函数5.void insertc(struct couse *incouse)//课程管理子函数(增加课程)6.void delc(int num1)//课程管理子函数(删除课程)7.void elect(struct student * s)//选课8.void cheak()//学生选课子函数(查询可选课程)9.void back(struct student * p)//退课10.void hcheak()//学生选课子函数(查询已选课程)11.void elective()//学生选课主函数12.void listc()//输出课程信息13.void lists()//输出学生信息14.void intoc()//存储课程信息15.void intos()//存储学生信息16.void into()//存储信息17.void store()//信息主函数18.int main()//主函数五、测试1.主菜单2.录入课程信息3,从文件输入4,学生选课菜单5,学生信息管理6,管理员输入课程信息界面:六、设计总结问题一:无法读取文txt文件。
c语言课程设计影院管理系统一、教学目标本课程的目标是让学生掌握C语言编程基础,能够运用C语言设计并实现一个简单的影院管理系统。
具体目标如下:1.知识目标:–掌握C语言的基本语法和数据结构。
–理解函数的定义和调用。
–了解面向过程的编程思想。
2.技能目标:–能够使用C语言编写简单的程序。
–能够运用函数封装和模块化编程。
–能够设计和实现一个简单的影院管理系统。
3.情感态度价值观目标:–培养学生的编程兴趣和自信心。
–培养学生的问题解决能力和创新思维。
–培养学生的团队合作和沟通能力。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据结构、函数的定义和调用,以及面向过程的编程思想。
具体安排如下:1.C语言的基本语法:–变量和常量的声明和使用。
–运算符和表达式的使用。
–控制语句的运用。
2.数据结构:–数组的声明和操作。
–链表的创建和操作。
–栈和队列的应用。
3.函数的定义和调用:–函数的声明和定义。
–函数的参数传递和返回值。
–函数的调用和调用栈。
4.面向过程的编程思想:–模块化编程和函数封装。
–程序的流程控制和错误处理。
–面向过程的编程实践。
三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等。
1.讲授法:教师通过讲解和示例来传授知识,引导学生理解和掌握C语言的基本语法和数据结构。
2.讨论法:学生通过小组讨论和分享,互相学习和交流,培养团队合作和沟通能力。
3.案例分析法:教师通过分析真实的影院管理系统的案例,引导学生运用C语言编程解决实际问题。
4.实验法:学生通过编写和运行C语言程序,实践和巩固所学的知识,培养问题解决能力和创新思维。
四、教学资源为了支持教学内容和教学方法的实施,本课程将准备以下教学资源:1.教材:《C语言程序设计》或《C语言入门教程》。
2.参考书:《C Primer Plus》或《C和指针》。
3.多媒体资料:教学PPT、视频教程、编程案例和示例代码。
c语言课程设计报名管理系统一、教学目标本课程的教学目标是使学生掌握C语言课程设计的基本知识和技能,能够运用C语言设计一个简单的报名管理系统。
具体包括以下三个方面的目标:1.知识目标:学生需要了解C语言的基本语法和数据结构,掌握函数的定义和调用,理解面向过程的编程思想。
2.技能目标:学生能够熟练使用C语言进行编程,具备解决实际问题的能力,能够独立设计并实现一个简单的报名管理系统。
3.情感态度价值观目标:学生通过完成课程设计,培养对计算机科学的兴趣和热情,增强自主学习的能力,培养团队合作和解决问题的精神。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据结构、函数的定义和调用,以及面向过程的编程思想。
具体包括以下几个部分:1.C语言的基本语法:变量、常量、运算符、表达式、语句等。
2.数据结构:整数、浮点数、字符、数组、指针等。
3.函数的定义和调用:用户定义函数、标准库函数、函数的参数传递、返回值等。
4.面向过程的编程思想:顺序结构、选择结构、循环结构等。
5.报名管理系统的设计:需求分析、功能模块设计、程序实现等。
三、教学方法本课程的教学方法采用讲授法、讨论法、案例分析法和实验法相结合的方式,以激发学生的学习兴趣和主动性。
1.讲授法:通过讲解C语言的基本语法、数据结构、函数的定义和调用等知识,使学生掌握课程的基本概念和原理。
2.讨论法:通过分组讨论、问题解答等方式,引导学生主动思考和探索,培养学生的解决问题的能力。
3.案例分析法:通过分析报名管理系统的案例,使学生理解课程设计的方法和步骤,提高学生的实际操作能力。
4.实验法:通过上机实验,让学生动手编写代码,巩固所学知识,培养学生的实际编程能力。
四、教学资源本课程的教学资源包括教材、参考书、多媒体资料和实验设备等。
1.教材:选用《C语言程序设计》等相关教材,作为学生学习的基本资料。
2.参考书:提供《C语言编程思想》、《C语言实战》等参考书,供学生深入学习。
程序设计c语言课程设计一、教学目标本课程的教学目标是使学生掌握C语言程序设计的基本概念、语法和编程技巧,培养学生运用C语言解决实际问题的能力。
具体分解为以下三个方面的目标:1.知识目标:学生需要掌握C语言的基本语法、数据类型、运算符、控制结构、函数、数组和指针等概念。
2.技能目标:学生能够熟练使用C语言编写程序,解决简单的数学计算、数据处理和排序等问题。
3.情感态度价值观目标:培养学生对编程语言的兴趣,增强其自主学习和解决问题的能力,使其认识到程序设计在现代社会的重要性。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据类型、运算符、控制结构、函数、数组和指针等。
具体安排如下:1.第一章:C语言概述,介绍C语言的发展历程、特点和基本语法。
2.第二章:数据类型和运算符,讲解整型、浮点型、字符型数据以及各类运算符的用法。
3.第三章:控制结构,学习顺序结构、分支结构和循环结构的使用。
4.第四章:函数,讲解函数的定义、声明和调用,以及常用的库函数。
5.第五章:数组和指针,学习一维、二维数组的操作以及指针的基本用法。
6.第六章:字符串和文件操作,了解字符串的表示方式、文件的基本操作。
三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法相结合的方式:1.讲授法:教师通过讲解、举例等方式,向学生传授C语言的基本概念和编程技巧。
2.案例分析法:教师通过分析实际案例,引导学生运用C语言解决具体问题。
3.实验法:学生动手编写程序,巩固所学知识,培养实际编程能力。
4.讨论法:学生分组讨论,共同解决问题,提高沟通和合作能力。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将准备以下教学资源:1.教材:《C程序设计语言》(K&R)2.参考书:《C Primer Plus》、《C语言入门教程》3.多媒体资料:教学PPT、视频教程、在线编程练习平台4.实验设备:计算机、编程环境(如Visual Studio、Code::Blocks等)五、教学评估本课程的教学评估将采用多元化评价方式,全面客观地评价学生的学习成果。
c语言完整课程设计一、教学目标本课程旨在通过学习C语言的基础知识,使学生能够理解并掌握C语言的基本语法、数据类型、运算符、控制结构、函数等核心概念;培养学生运用C语言进行程序设计的能力,能够编写解决实际问题的简单程序;并通过编程实践,培养学生的逻辑思维能力、创新能力和团队合作意识。
具体来说,知识目标包括:1.掌握C语言的基本语法和规则。
2.理解数据类型、变量和运算符的概念及使用方法。
3.熟悉控制结构,能够运用条件语句和循环语句编写程序。
4.掌握函数的定义和调用,了解作用域规则。
技能目标包括:1.能够使用C语言编写简单的程序,解决实际问题。
2.具备基本的编程能力和调试能力。
3.能够运用C语言进行基本的算法设计和实现。
情感态度价值观目标包括:1.培养学生的自主学习能力,鼓励他们积极探索和解决问题。
2.培养学生的团队合作意识,提高他们在团队中的沟通协作能力。
3.培养学生对编程的兴趣和热情,激发他们继续深入学习计算机科学的动力。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据类型、运算符、控制结构、函数等核心概念,以及简单的编程实践。
具体安排如下:1.第一章:C语言概述,学习C语言的基本概念和环境配置。
2.第二章:数据类型和变量,介绍基本数据类型、变量定义和使用。
3.第三章:运算符和表达式,讲解各种运算符的用法和表达式的计算。
4.第四章:控制结构,学习条件语句和循环语句的编写和使用。
5.第五章:函数,讲解函数的定义、声明和调用,以及作用域规则。
6.第六章:编程实践,通过实际项目案例,运用所学知识解决实际问题。
三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法相结合的方式进行教学。
1.讲授法:教师讲解C语言的基本概念、语法规则和编程技巧,系统地传授知识。
2.案例分析法:通过分析典型实例,让学生了解并掌握C语言在实际问题中的应用。
3.实验法:安排编程实验,让学生亲自动手编写代码,培养实际编程能力。
实训课程设计报告题目:图书信息管理系统学院:信息学院系别:电子系年级:2012级专业:电子信息科学与技术组长:**组员:******指导老师:***2014年1月1日目录摘要 ................................................................................................- 3 -题目简介 ........................................................................................- 2 -小组分工情况: ............................................................................- 2 -需求分析 ........................................................................................- 3 -1. 编写目的..............................................................................- 3 -2. 项目实施背景 .....................................................................- 3 -3.业务流程图 ........................................................................- 4 -4.数据流程图 ........................................................................- 5 -5. 系统运行环境 .....................................................................- 5 -系统详细设计说明 ........................................................................- 6 -1总体简述................................................................................- 6 -2总体设计构想 .......................................................................- 6 -3程序流程图 ...........................................................................- 7 -4编码实现过程 .......................................................................- 8 -测试报告 ..................................................................................... - 15 -个人实训总结报告 ..................................................................... - 22 -个人实训总结报告——** ................................................... - 22 -个人实训总结报告——*** ................................................. - 23 -个人实训总结报告——*** ................................................. - 23 -编程总结 ..................................................................................... - 24 -附:源代码 ............................................................................... - 25 -摘要图书馆作为一种信息资源的集散地,在正常运营中面对大量书籍、读者信息以及两者间相互联系产生的借书信息、还书信息,图书和用户借阅资料繁多,包含很多的信息数据的管理。
课程设计任务书题目:教师信息管理系统一、课程设计时间共计1周,20学时。
二、课程设计内容用C语言编写具有以下功能的程序:1 录入教师信息,并将信息保存在teachers.txt文件中。
2 教师信息的浏览功能(输出)。
3 教师信息的查询功能,应分别能够按照工资和学历查询。
4 教师信息包括教师号、姓名、性别、年龄、学历、工资、电话等(教师号不重复)。
三、课程设计要求1. 程序质量:✧贯彻结构化的程序设计思想。
✧用户界面友好,功能明确,操作方便。
✧用户界面中的菜单至少应包括“输入教师信息”、“显示教师信息”、“查询信息”、“退出”4项。
✧代码应适当缩进,并给出必要的注释,以增强程序的可读性。
2. 课程设计说明书:课程结束后,上交课程设计说明书和源程序。
课程设计说明书的格式和内容参见提供的模板。
四、指导教师和学生签字指导教师:________ 学生签名:________五、说明书成绩六、教师评语目录一、需求分析 ................................... 错误!未定义书签。
二、程序流程图 ............................... 错误!未定义书签。
三、核心技术的实现说明及相应程序段错误!未定义书签。
四、课设总结 ................................... 错误!未定义书签。
五、参考文献 ................................... 错误!未定义书签。
六、源程序 ....................................... 错误!未定义书签。
一、需求分析经过对程序设计题目的分析可知,整个程序的设计实现大致分为七个模块,每一个模块对应一个函数。
在这些函数当中,添加教师数据函数,显示教师数据函数,查询教师信息函数的实现严格按照题目的要求。
读取文件函数和保存信息函数对其它函数的实现起辅助作用,主函数及菜单函数控制程序的整体运行。
C语言课程设计实验报告学生信息管理系统目录1. 内容综述 (2)1.1 实验背景 (2)1.2 实验目的 (3)1.3 实验内容 (4)2. 系统设计 (5)2.1 系统需求分析 (5)2.1.1 功能需求 (6)2.1.2 性能需求 (7)2.1.3 界面需求 (7)2.2 系统总体结构 (9)2.3 系统模块设计 (10)2.3.1 数据模块 (10)2.3.2 功能模块 (11)3. 系统实现 (12)3.1 开发环境 (13)3.1.1 编译器 (13)3.1.2 操作系统 (14)3.1.3 开发工具 (16)3.2 关键代码实现 (17)3.2.1 数据结构设计 (17)3.2.2 数据库操作 (18)3.2.3 功能实现 (19)3.3 系统测试 (20)3.3.1 功能测试 (22)3.3.2 性能测试 (22)3.3.3 界面测试 (23)4. 系统运行结果与分析 (25)4.2 功能测试结果 (27)4.3 性能测试结果 (28)4.4 系统分析与评价 (29)5. 总结与展望 (31)5.1 实验总结 (32)5.2 不足与改进 (33)5.3 展望与应用 (34)1. 内容综述本实验报告旨在详细阐述“C语言课程设计实验:学生信息管理系统”的设计与实现过程。
本系统以C语言为基础,采用结构化程序设计方法,旨在培养学生的编程能力和实际项目开发经验。
报告首先介绍了系统的背景和设计目标,随后对系统的主要功能模块进行了详细描述,包括学生信息录入、查询、修改和删除等功能。
此外,报告还对系统设计过程中遇到的技术难点、解决策略以及测试结果进行了分析,最后总结了实验的收获和不足,为后续的改进工作提供了参考。
通过本实验,学生不仅掌握了C语言编程的基本技能,还学会了如何将理论知识应用于实际项目中,提高了软件工程实践能力。
1.1 实验背景随着信息技术的飞速发展,数据管理在各个领域都扮演着越来越重要的角色。
课程设计目的熟悉程序设计的基本流程,掌握程序设计基本方法,基本技巧、并能综合运用,提高程序设计能力。
通过实践,熟悉掌握C++语言中面向过程部分的内容,能够运用C++语言解决一个实际问题。
设计环境及语言VC+集成开发环境(IDE)Microsoft visual C++ 6。
0语言。
课题设计步骤1.需求分析从软件使用者处获得用户需求,确定课题开发应具备的功能;2.系统结构设计将整个系统功能分块,考虑各个功能模块应具备的功能,模块间的联系,划分不同的子系统进行设计;3.数据设计设计系统中新的数据类型、存储类型;4.代码设计在以上阶段的基础上编写代码;5.软件测试使用实现设计好的测试用例、测试次数对编制的程序进行测试,发现存在错误(包括潜在的问题),加以修改,完善。
课程设计内容:1.学生个人信息管理系统。
本课程设计通过建立、修改、查询、显示、排序等显示学生个人信息等功能,具体的技术有:(1)结构、枚举类型的定义与使用;(2)数组的定义使用;(3)程序的三种基本控制流程的综合、灵活运用;(4)普通指针和数组指针的定义和使用;(5)各类函数的定义和调用;(6)文件的输入/输出(7)程序的调试。
2.具备的功能有:(1)新增学生数据的添加:姓名,成绩.(2)修改学生信息:输入姓名,根据姓名,修改该学生的三项学生信息数据并显示;(3)删除一个学生信息:输入姓名,根据学生姓名删除该生信息;(4)根据学生姓名查询:输入姓名,查找该学生并显示学生个人信息;(5)显示全部学生信息;(6)根据学生姓名首字母先后排序学生个人信息;3.设计要求(1)在Visual C++控制台应用程序方式下设计课题。
(2)设计的程序完成该课程规定的功能。
(3) 程序具有一定的健壮性.4.设计部分#include<iostream。
h〉#include〈string.h>#include〈fstream。
h〉class stu //定义一个stu类{char name[20];double math,chinese,english,average,sum;public:stu(){}stu(char n[20],double ma,double chin,double eng){strcpy(name,n);math=ma;chinese=chin;english=eng;}double getsum(){sum=chinese+english+math;return sum;}double getaver(){average=getsum()/3;return average;}friend void main();};void main(){cout<〈"请选择您需要的操作!"〈<endl;cout〈〈”操作:"<〈endl;cout〈〈”(0)数据录入"<<endl;cout〈〈"(1)增加人员"〈〈endl;cout<〈”(2)删除人员”〈〈endl;cout<<”(3)修改数据"<<endl;cout〈〈"查询:"<<endl;cout〈<”(4)按总成绩查询”〈〈endl;cout<<"(5)按姓名查询”〈〈endl;cout<〈"(6)输出所有学生的数据"〈〈endl;cout<<"成绩名词"<<endl;cout<〈"(7)按总分查询排名”〈<endl;cout<〈"(8)按语文查询排名"<〈endl;cout<<"(9)按数学查询排名"〈〈endl;cout〈<”(y)按英语查询排名”〈<endl;cout〈<”选择相关操作请输入相对的括号里的阿拉伯数字!"<〈endl;char p;char w;stu *s[50];ofstream *file[50];int i=0;int j=0;bool flag2=0;do{cin>>p;if((p>='0'&&p〈='10'))flag2=1;elsecout<<"指令错误!请重新输入:"<<endl;}while(flag2==0);do{switch(p){case '0':{char c;char name[20];double math,chinese,english;do{cout<<"请输入姓名"<<endl;cin〉>name;cout〈〈”请输入数学成绩:”〈〈endl;cin>>math;cout<〈"请输入语文成绩:"<<endl;cin〉>chinese;cout<<"请输入外语成绩:"〈<endl;cin>〉english;file[j]=new ofstream(”d:\\document",ios::ate);*file[j]<<”姓名"〈<name〈<”数学成绩”〈〈math<〈”语文成绩"〈<chinese<〈”外语成绩”<〈english〈〈endl;j++;s[i]=new stu(name, math, chinese, english);i++;cout〈〈”数据录入成功,想继续录入吗(y/n)"<〈endl;cin>>c;flag2=0;do{if(c!=’y’&&c!='n'){cout<<”指令错误!请重新输入!"<<endl;cin〉>c;}elseflag2=1;}while(flag2==0);}while(c==’y’);break;}case '4’:{double t;char c;do{int flag1=0;cout〈<”请输入你要查询学生的总成绩"<<endl;cin〉>t;for(int q=0;q〈i;q++){if(s[q]—〉getsum()==t){flag1=1;cout<〈”您要查询的学生是:”〈<(*s[q])。
C语言旅游管理系统课程设计一、教学目标本课程的目标是让学生掌握C语言的基本语法,具备运用C语言进行程序设计的能力,通过实现一个旅游管理系统,培养学生解决实际问题的能力。
具体目标如下:1.知识目标:•掌握C语言的基本语法和数据结构。
•理解旅游管理系统的业务流程。
2.技能目标:•能够使用C语言编写简单的程序。
•能够运用C语言实现旅游管理系统的各个功能模块。
3.情感态度价值观目标:•培养学生的团队合作意识和解决问题的能力。
•培养学生对计算机科学的兴趣和热情。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据结构以及旅游管理系统的实现。
具体安排如下:1.C语言的基本语法:包括变量、数据类型、运算符、控制结构等。
2.数据结构:包括数组、链表、栈、队列等。
3.旅游管理系统的实现:包括用户登录、景点管理、酒店管理、订单管理等功能模块。
三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法、实验法等。
1.讲授法:用于讲解C语言的基本语法和数据结构。
2.讨论法:用于讨论旅游管理系统的实现方案。
3.案例分析法:通过分析实际案例,让学生更好地理解旅游管理系统的实现。
4.实验法:让学生动手编写程序,实现旅游管理系统的各个功能模块。
四、教学资源为了支持教学内容和教学方法的实施,本课程将准备以下教学资源:1.教材:《C语言程序设计》。
2.参考书:《C语言编程实践》、《数据结构与算法》。
3.多媒体资料:包括教学PPT、视频教程等。
4.实验设备:计算机、网络等。
五、教学评估为了全面、客观地评估学生的学习成果,本课程将采取以下评估方式:1.平时表现:包括课堂参与度、小组讨论、提问等,占总评的30%。
2.作业:包括编程练习、实验报告等,占总评的40%。
3.考试:包括期中和期末考试,占总评的30%。
六、教学安排本课程的教学安排如下:1.教学进度:按照教材的章节顺序进行教学,确保每个章节都有足够的教学时间。
南京工程学院课程设计说明书(论文)题目学生成绩管理系统或图书借阅管理系统或职工工资管理系统课程名称 C/C++程序设计I院(系、部、中心)计算机工程学院专业电子信息科学与技术班级电科技121学生姓名学号设计地点图书信息大楼401指导教师解芳设计起止时间:2013年2 月25 日至2013年2 月29 日目录设计任务 1 系统设计方案 2 程序主要代码分析 3 程序调试中出现的问题及其解决方法 4 改进意见与收获体会 5 主要参考资料 6一、任务(根据各课题自己用文字叙述,以下内容只作参考)编写一个学生成绩管理的程序。
由键盘输入(最好要考虑输入数据输入的格式及输入数据的有效性),然后进行以下的功能实现。
程序要求主函数是一个功能选择菜单,其它各功能都用各自的函数实现。
要求至少有10个学生的原始数据。
原始数据如下:学号姓名C程序设计高等数学英语线性代数1 王.. 80 80 80 802 张.. 90 90 90 90…功能要求如下:1、数据的输入2、计算每位同学的平均分3、计算每门课程的平均分4、计算各分数段(90-100、80-89、60-79、60以下)的人数5、对这10位同学的成绩按平均分排序,给出名次。
6、对数据可以进行增、删、改的编辑操作。
7、对数据可进行查询操作。
8、最后输出结果如下:学号姓名C程序设计高等数学英语线性代数平均分名次1 王.. 80 80 80 80 80 22 张.. 90 90 90 90 90 1…各科平均分85 85 85 85 8590-100 1 1 1 1 180-89 1 1 1 1 160-69 0 0 0 0 060以下0 0 0 0 0二、系统设计方案可以有以下内容:功能分析、功能模块图、各模块功能;数据结构的选定、对选用恰当的数据结构类型进行说明、对自定义类型及典型变量进行说明。
三、程序主要代码分析对典型程序段最好画出流程图。
只要主要代码,不必把所有代码附上。
沈 阳 航 空 航 天 大 学 课程设计
学 号 __*************_ 班 级 ___94070202_____ 姓 名 ___ 于 涛__ __ 指导教师 __ 徐 晗______
2010年 10 月 08 日 沈阳航空航天大学设计用纸
I 目录 一、需求分析 ...................................................... 1 二、设计分析 ...................................................... 2 三、主要界面截图 .............................................. 7 四、技术要点 ...................................................... 8 五、个人总结 ...................................................... 10 六、参考文献 ...................................................... 11 七、源程序 .......................................................... 11 沈阳航空航天大学设计用纸
1 一、需求分析 经过对程序设计题目的分析可知,整个程序的设计实现大致分为五个模块,其中每一个模块对应一个函数,他们的功能分别是:录入新教材信息,添加已有教材,查找教材信息,保存教材函数。在这些函数当中,前三个函数的实现严格按照题目的要求,而最后一个函数用来将修改的函数保存在book.txt中。 1. 稳定性分析 指系统比较健壮,只要是用户的合理操作,系统都应给出合理正确的回应,而不是出现令用户感到意外的系统错误或系统崩溃。 2. 主要功能分析 (1)录入教材信息:允许用户输入教材名称、作者、出版社、教材册数、编号、售价。 (2)查询教材: 允许按照编号和书名对教材的各项信息进行查询; (3)添加已有教材: 通过添加已有教材的同时对教沈阳航空航天大学设计用纸
2 材信息的更改; (4)保存教材函数 将执行插入教材信息存入book.txt中。 除上面介绍的功能之外,程序还具有退出功能,可以在输入修改信息之后实现选择退出。 每一本教材记录都包含编号、作者、出版社、售价、书名和数量,在程序当中,将教材记录类型定义为结构体类型,添加以及追加的教材信息直接写入book.txt文件中,其他函数每次对教材记录的访问,其数据来源都是book.txt文件,这样做不但可以保证教材数据的一致性,而且可以对教材数据进行保存,保证每次运行程序都可以采用原来的数据。
二、设计分析 主要有5个功能模块,每个模块对应一个C语言自定义函数。这些函数原型及其功能简述如下: 1、 教材录入函数说明 这个函数用static声明局部变量,使函数调用结束后不消沈阳航空航天大学设计用纸
3 失而保留原值。用只写的方式打开一个文件夹(book.txt)把数据项写入指定文件(book.txt)中。关闭文件。 2、教材查询的函数 该函数的核心内容是switch函数的使用、for函数的嵌套使用与strcmp比较字符串函数的使用。 3、已有教材添加函数 该函数的核心内容是if函数嵌套和for函数的使用以及strcmp比较字符串函数的使用 4、教材信息保存函数 这个函数先建立一个文件并把具体的信息存入文件中 1、程序总体结构图 程序结构总图 设置界面函数
新教材信息的录入 教材信息的保存 教材信息的查询 教材信息
的更改 沈阳航空航天大学设计用纸
4 2、具体功能框图 (1)录入新教材信息函数 沈阳航空航天大学设计用纸
5 (2)查询教材信息 沈阳航空航天大学设计用纸
6 (3)添加已有教材信息 (4)保存教材信息函数 沈阳航空航天大学设计用纸
7 三、主要界面截图 图1 程序主界面 图2 录入界面 图3 查询界面 沈阳航空航天大学设计用纸
8 四、技术要点
(对本程序贡献较大的C语言知识点;重要算法的设计与实现) 1、结构体的应用 定义了结构体用来描述教材的名称、作者、出版社、编号、册数和售价,具体的定义如下: #define B 1000 typedef struct Book { char num[20]; char name[20]; char author[20]; char press[20]; int count; float shoujia; }book[B]; struct Book books[B];
所定义的结构体主要用于定义数组。
2、文件操作 包括了文件的写入、读取和保存三个方面。例如如下程序段用于保存教材信息: void save() { int i = 0; FILE *fp; fp = fopen("e:\\book.txt", "wr"); while(books[i].count > 0) 沈阳航空航天大学设计用纸 9 { fprintf(fp, "教材名称:%s 教材作者:%s 出版社:%s 册数:%d 编号:%s 售价:%f\n", books[i].name, books[i].author,books[i].press,books[i].count,books[i].num,books[i].shoujia); i++; } fclose(fp); }
3、关于查询函数
实现从系统中查询某教材的相关信息的查询函数稍微复杂一些,需要先进行选择是通过名称查询还是编号查询。如下是通过教材名称查询的函数: void chaxun() /*教材查询*/ { FILE *fp; int i,flag=0; int a; char x[32]; char y[32]; if((fp=fopen("e:\\book.txt","r"))==NULL) { printf("此文件无法打开!\n"); return; } printf("请选择查询方式:1.教材名 2.编号\n"); scanf("%d",&a); switch(a) { case 1: printf("输入教材名:\n");scanf("%s",x); for(i=0;i<1000;i++) if (strcmp(books[i].name,x)==0) /*比较输入名与存储名的字符串大小*/ {printf("教材名:%s 教材作者:%s 出版社:%s 册数:%d 编号:%s 售沈阳航空航天大学设计用纸 10 价:%f\n",books[i].name,books[i].author,books[i].press,books[i].count,books[i].num,books[i].shoujia); flag=1; } if(flag==0) printf("此教材不存在\n"); break;
五、个人总结
C语言是一门既有趣又非常有用的课程,说难也不难,但是也不简单,只要会很好的应用,便会觉得编程过程也并不感觉枯燥,当程序编完且运行成功之后,便觉得非常有成就感,虽然有时也会被一时解决不了的问题弄的焦头烂额,但在解决的过程中逐渐的、更深的掌握这门课程的知识,所以,这一周的C语言课程设计实习的收获是非常的大的,甚至还有一点觉得实习的时间有点短。通过这次c语言课程设计,我对C语言的知识进行了比较全面的学习,了解到C语言的简单编程的实际应用。 我的程序基本功能符合题目要求,但也并不是太完美。例如在输入教材册数的时候如果输入的不是数字的话,不会有提示。我始终没有想到解决的办法…… 通过此次课程设计,我熟悉了函数的调用,指针的应沈阳航空航天大学设计用纸 11 用,数组的运用。程序可以实现题目所要求各项,知道了实践并真正上机操作的意义。
六、参考文献 1 谭浩强.C程序设计.北京:清华大学出版社,2009 七、源程序 #include #include #include #define B 1000 typedef struct Book /*定义教材结构体*/ { char num[20]; char name[20]; char author[20]; char press[20]; int count; float shoujia; }book[B]; struct Book books[B]; void luru() /*录入教材信息*/ { static int i = 0; printf("\n请输入教材名称:"); scanf("%s", books[i].name); printf("请输入作者:"); scanf("%s", books[i].author); printf("请输入出版社:"); scanf("%s", books[i].press); printf("请输入教材册数:");