C++课程设计题目详细要求

合集下载

c语言课程设计要求

c语言课程设计要求

c语言课程设计要求c语言课程设计要求2009-2010学年第一学期《C/C++语言程序设计》课程设计一、课程设计的目的1.复习、巩固C语言的基础知识,进一步加深对C语言的理解和掌握;2.为学生提供一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机结合起来,锻炼学生的分析解决实际问题的能力。

提高学生实践编程的能力;3.培养学生在项目开发中团队合作精神、创新意识及能力。

二、课程设计题目安排课程设计题目可从以下题目中选择,也可经老师同意自拟题目。

可以多人合作完成(每组最多3人),合作完成的必须明确每个人的具体任务,每人单独上交课程设计报告。

三、课程设计题目第1题学生档案管理设计一个学生档案管理程序。

该程序应该具有下列功能:(1)通过键盘输入某位学生的相关信息。

包括学号、姓名、性别、年龄、出生年月、电话、E-mail、籍贯等;(2)浏览学生信息;(3)根据学号修改、删除学生信息;(4)能按学号、姓名、年龄等关键字排序;(5)统计学生年龄的平均值及各年龄段人数;(6)用链表实现,原始数据输入和结果输出使用文件存放。

第2题图书登记管理设计一个图书登记管理程序。

该程序应该具有下列功能:(1)通过键盘输入某本图书的信息,包括编号、书名、作者姓名、出版社、价格、出版时间等;(2)浏览图书信息;(3)按编号、作者姓名、书名、出版社等关键字查询信息;(4)根据图书编号删除或修改该本图书的信息;(5)按指定关键字排序功能。

(5)统计某出版社所有图书的平均价格、出版图书最多的作者及其出版的数目。

(6)原始数据输入和结果输出使用文件存放。

第3题小型通讯录管理设计一个实用的小型通讯录管理程序。

该程序应该具有下列功能:(1)能建立、修改、增删通讯录中条目,通讯录中的信息包括类别、编号、姓名、班级、电话、住址等;(2)能够按多种方式进行查询(如姓名、电话);(3)能够对已有信息进行修改、删除;(4)按指定关键字排序。

C++builder课程设计要求

C++builder课程设计要求

附录:源程序
//-------------------主窗体 查询与浏览--------------------------------------#include <vcl.h> #pragma hdrstop #include "Unit1.h" #include "Unit2.h" #include "Unit3.h" #include "Unit4.h" #include "Unit5.h" #include "Unit6.h" #pragma package(smart_init) #pragma resource "*.dfm" TFmain *Fmain; bool onshow=false; __fastcall TFmain::TFmain(TComponent* Owner) : TForm(Owner) { } void __fastcall TFmain::N5Click(TObject *Sender) { Close();//退出程序 } void __fastcall TFmain::SpeedButton3Click(TObject *Sender) { DataModule3->ADOQuery1->First() ; StatusBar1->Panels->Items[0]->Text="数据指向第一个";
二、系统分析(需求分析)
1.需求分析: ① 能够输入学生的综合情况的输入、修改以及删除; ② 能够实现对学生信息的浏览; ③ 能够实现对学生进行查询; ④ 设计系统封面并由计时器控制; 2.系统性能要求: ① 系统安全、可靠; ② 功能齐全; ③ 操作方便、界面友好; ④ 易于维护和扩充。 3.系统的功能分析: 资料维护:系统维护包括对各种表记录的修改、删除、添加等操作。 资料维护:对数据表中的信息进行浏览。 系统查询:可以按学号、姓名等相关信息进行详细或模糊查询。

c语言课程设计报告要求

c语言课程设计报告要求

c语言课程设计报告要求一、课程目标知识目标:1. 理解C语言课程设计的基本要求,掌握C语言编程的基本规范。

2. 学会运用C语言编写程序,实现简单的算法和数据结构。

3. 掌握C语言中的函数定义、调用和模块化编程思想。

技能目标:1. 能够运用所学知识独立完成C语言课程设计任务,具备分析和解决问题的能力。

2. 学会使用调试工具,对程序进行调试和优化,提高代码质量。

3. 培养良好的编程习惯,提高编程效率。

情感态度价值观目标:1. 培养学生对计算机编程的兴趣,激发学习热情,增强自信心。

2. 培养学生的团队协作精神,提高沟通与表达能力。

3. 培养学生严谨、认真、负责的学习态度,树立正确的价值观。

课程性质:本课程为C语言编程实践课,注重培养学生的编程能力和实际操作能力。

学生特点:学生具备一定的C语言基础,对编程感兴趣,但独立完成课程设计的能力有待提高。

教学要求:结合学生特点,注重理论与实践相结合,以任务驱动教学,引导学生主动探究,培养学生的编程能力和解决问题的能力。

在教学过程中,关注学生的学习进度,及时给予指导和反馈,确保课程目标的实现。

将课程目标分解为具体的学习成果,便于教学设计和评估。

二、教学内容本课程教学内容紧密结合课程目标,选取以下重点内容进行讲解和实践:1. C语言基本语法:变量定义、数据类型、运算符、表达式、控制语句(如if、for、while等)。

2. 函数:函数定义、调用、参数传递、返回值、递归。

3. 数组与字符串:一维数组、二维数组、字符串操作。

4. 指针:指针定义、指针与数组、指针与函数、指针与动态内存分配。

5. 结构体与联合:结构体定义、结构体数组、结构体指针、联合体。

6. 文件操作:文件打开、关闭、读写、定位。

教学大纲安排如下:第一周:C语言基本语法复习,讲解课程设计要求。

第二周:函数定义与调用,实践编写简单函数。

第三周:数组与字符串操作,完成相关编程任务。

第四周:指针概念及操作,实践指针在程序中的应用。

c语言课程设计课程要求

c语言课程设计课程要求

c语言课程设计课程要求一、教学目标本课程的教学目标是使学生掌握C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识,培养学生编程思维和解决问题的能力,提高学生实际操作技能,使学生了解编程在实际应用中的重要性,培养学生对计算机科学的兴趣和热情。

具体来说,知识目标包括:1.理解C语言的基本语法和规则。

2.掌握基本数据类型、运算符和表达式。

3.熟悉控制结构,如条件语句、循环语句等。

4.了解函数的定义和调用。

5.理解编程中常用的算法和数据结构。

技能目标包括:1.能够使用C语言编写简单的程序。

2.能够阅读和理解简单的C语言程序。

3.能够运用C语言解决实际问题。

情感态度价值观目标包括:1.对编程和计算机科学产生兴趣和热情。

2.培养学生的创新思维和解决问题的能力。

3.培养学生的团队合作和沟通能力。

二、教学内容本课程的教学内容主要包括C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识。

具体安排如下:1.C语言概述:介绍C语言的历史、特点和应用领域。

2.基本数据类型和运算符:整型、浮点型、字符型数据以及相应的运算符。

3.控制结构:条件语句、循环语句等。

4.函数:函数的定义、声明和调用,熟悉常用的数学函数和输入输出函数。

5.数组和字符串:一维、多维数组的声明和使用,字符串的基本操作。

6.指针:指针的概念和运算,指针在内存中的表示和应用。

7.结构体和联合体:结构体的定义和使用,联合体的概念和应用。

8.文件操作:文件的打开、关闭、读写等操作。

三、教学方法本课程采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等,以激发学生的学习兴趣和主动性。

1.讲授法:通过教师的讲解,使学生掌握C语言的基本概念和语法。

2.讨论法:引导学生进行小组讨论,培养学生的团队合作和沟通能力。

3.案例分析法:通过分析实际案例,使学生了解C语言在实际应用中的重要性。

4.实验法:让学生动手编写程序,培养学生的实际操作技能和编程思维。

c语言课程设计设计要求

c语言课程设计设计要求

c语言课程设计设计要求一、教学目标本课程的教学目标是使学生掌握C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识,培养学生编写简单程序的能力,提高学生分析问题和解决问题的能力。

1.理解C语言的基本语法和规则。

2.掌握基本数据类型、运算符和表达式。

3.熟悉控制结构,如if语句、for循环、while循环等。

4.了解函数的定义和调用。

5.能使用C语言编写简单的程序,解决问题。

6.能熟练使用C语言的调试工具,进行程序的调试和优化。

7.能阅读和理解简单的C语言程序。

情感态度价值观目标:1.培养学生对编程的兴趣,激发学生学习的主动性。

2.培养学生解决问题的能力,提高学生的自信心。

3.培养学生团队合作的精神,提高学生的沟通能力。

二、教学内容教学内容以《C语言程序设计》教材为基础,按照教材的章节安排教学内容,共分为10个章节。

1.C语言概述2.基本数据类型和运算符3.控制结构(if语句、for循环、while循环)4.数组和字符串5.结构体和文件6.预处理指令7.编程实践8.常见错误和调试技巧三、教学方法本课程采用讲授法、案例分析法、实验法等教学方法,通过多种方式激发学生的学习兴趣和主动性。

1.讲授法:通过教师的讲解,使学生掌握C语言的基本语法和概念。

2.案例分析法:通过分析典型的案例,使学生理解C语言的应用和编程思想。

3.实验法:通过上机实验,使学生掌握C语言的编程技巧和调试方法。

四、教学资源1.教材:《C语言程序设计》2.参考书:《C语言编程思想》3.多媒体资料:教学PPT、视频教程4.实验设备:计算机、编程环境五、教学评估本课程的评估方式包括平时表现、作业、考试等,以全面客观地反映学生的学习成果。

1.平时表现:通过课堂参与、提问、讨论等环节,评估学生的学习态度和积极性。

2.作业:布置适量的课后作业,评估学生的编程能力和对知识的理解运用。

3.考试:包括期中和期末考试,以闭卷形式进行,评估学生的综合运用能力和掌握程度。

c语言课课程设计要求

c语言课课程设计要求

c语言课课程设计要求一、教学目标本课程的教学目标是使学生掌握C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识,培养学生运用C语言进行程序设计的能力,提高学生的逻辑思维和问题解决能力。

1.理解C语言的基本语法和规则。

2.掌握基本数据类型、运算符和表达式。

3.熟悉控制结构,如条件语句、循环语句等。

4.了解函数的定义和调用。

5.能够使用C语言编写简单的程序。

6.能够运用控制结构进行程序流程控制。

7.能够定义和使用函数。

情感态度价值观目标:1.培养学生的编程兴趣,提高学生对计算机科学的热爱。

2.培养学生的问题解决能力和创新思维。

3.培养学生的团队合作意识和沟通能力。

二、教学内容本课程的教学内容主要包括C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识。

1.C语言的基本语法和规则。

2.基本数据类型、运算符和表达式。

3.控制结构,如条件语句、循环语句等。

4.函数的定义和调用。

5.第一周:C语言的基本语法和规则。

6.第二周:基本数据类型、运算符和表达式。

7.第三周:控制结构,如条件语句、循环语句等。

8.第四周:函数的定义和调用。

三、教学方法本课程采用多种教学方法,包括讲授法、讨论法、案例分析法、实验法等,以激发学生的学习兴趣和主动性。

1.讲授法:通过讲解和演示,使学生掌握C语言的基本语法和知识。

2.讨论法:通过小组讨论和问题解答,培养学生的思考和问题解决能力。

3.案例分析法:通过分析实际案例,使学生了解C语言在实际应用中的重要性。

4.实验法:通过编写和运行C语言程序,提高学生的实际编程能力。

四、教学资源本课程的教学资源包括教材、参考书、多媒体资料、实验设备等。

1.教材:《C程序设计语言》2.参考书:《C Primer Plus》、《C语言编程思想》3.多媒体资料:教学PPT、视频教程4.实验设备:计算机、编程环境五、教学评估本课程的评估方式包括平时表现、作业、考试等,以全面、客观、公正地评估学生的学习成果。

C语言课程设计报告:职工信息管理系统程序设计

1.课程论文题目职工信息管理系统程序设计一、题目要求职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。

试设计一职工信息管理系统,使之能提供以下功能:(1)系统以菜单的方式工作。

(2)职工信息录入功能(职工信息用文件保存)。

(3)职工浏览功能。

(4)职工信息查询功能,查询方式可按学历查询或者工号查询。

(5)职工信息的删除、修改功能(可选项)。

2.程序设计思路1、设计思路(1)根据题目要求,应该把职工工资信息用结构体形式输入,在定义一个全局变量和文件指针进行整个程序的运行,然后把职工工资信息送到文件中,所以应该提供一个结构体和文件的输入输出等操作;(2)在程序中需实现职工工资浏览、查询、统计等功能的操作,所以需要建立相应的功能模块来实现;(3)另外还需要提供键盘式选择菜单实现功能,在运行时达到所要的目的。

3.功能模块图5.算法设计1.主函数提供输入、处理和输出部分的函数调用,各功能模块采用菜单方式选择。

2浏览模块【分析】该模块的功能是浏览职工的全部信息3排序模块4查询模块【分析】该模块的功能是根据输入的职工按照工号和学历查找对应的记录,找到以后,可进行继续查找或修改信息的操作。

流程图如下:5修改模块【分析】该模块的功能是显示所有职工的信息,考虑到记录较多,建议采用分屏显示。

显示完所有记录后,输入要修改的职工的工号,根据工号查到职工的记录,并提示用户修改该记录的哪部分信息,根据用户做的选择修改相应信息。

流程图如下:6.程序代码#include<stdio.h>#define N 50struct worker{char id[50];char name[20];char sex[10];char age[10];char edu[20];char salary[10];char address[20];char tel[20];}worker[N];void save(int n) //保存函数,保存n个记录{ FILE *fp;int i;if((fp=fopen("worker.txt","wb"))==NULL) //以只写方式为输出打开一个二进制文件{ printf("\nCannot open file\n");}for(i=0;i<n;i++)if(fwrite(&worker[i],sizeof(struct worker),1,fp)!=1)printf("file write error\n");fclose(fp);}int load() //加载函数{ FILE *fp;int i;if((fp=fopen("worker.txt","rb"))==NULL){printf("\nCannot open file\n");return NULL;}for(i=0;!feof(fp);i++)fread(&worker[i],sizeof(struct worker),1,fp);fclose(fp);return(i-1);}void no_input(int i,int n) //工号输入函数,i表示第i个职工的信息,n 表示比较到第n个职工{ int j,k,w1;do{w1=0;printf("工号:");scanf("%s",worker[i].id);for(j=0;worker[i].id[j]!='\0';j++)if(worker[i].id[j]<'0'||worker[i].id[j]>'9') //判断工号是否为数字{puts("请重新输入!\n");w1=1;break;}if(w1!=1)for(k=0;k<n;k++) //比较到第N个职工if(k!=i&&strcmp(worker[k].id,worker[i].id)==0) //判断职工号是否有雷同{puts("请重新输入!\n");w1=1;break;}}while(w1==1);}void input(int i) //输入一个记录的函数{ no_input(i,i);printf("姓名:");scanf("%s",worker[i].name);printf("性别:");scanf(" %s",&worker[i].sex);printf("年龄:");scanf("%s",&worker[i].age);printf("工资:");scanf("%s",worker[i].salary);printf("学历:");scanf("%s",&worker[i].edu);printf("住址:");scanf("%s",worker[i].address);printf("电话:");scanf("%s",worker[i].tel);}void printf_one(int i) //显示一个记录的函数{printf("%10s %10s %5s %5s %8s %6s %10s %10s\n",worker[i].id,worker[i].name,worker[i].sex,worker[i].age,worker[i].salary,worker[i].edu,worker[i].address,worker[i].tel); }void printf_back() //一个任务结束后选择是好似浏览还是返回{ int k,w;printf("\n\n\tSuccessful^-^.\n\n");printf("接下来做什么?\n\n\t1).浏览全部\t2).返回: [ ]\b\b");scanf("%d",&w);if(w==1)browse();else menu();}modify_data(int i,int n) //修改函数{ int c,w1;do{puts("\nmodify by=>\n\n 1).工号 2).姓名 3).性别 4).年龄 5).工资6).学历 7).地址 8).电话 9).取消");printf("请选择?:[ ]\b\b");scanf("%d",&c);if(c>9||c<1){puts("\nChoice error!please again!");getchar();}}while(c>9||c<1);do{switch(c){case 1:no_input(i,n);break;case 2:printf("name:");scanf("%s",worker[i].name);break;case 3:printf("sex:");scanf("%s",worker[i].sex);break;case 4:printf("age:");scanf("%s",worker[i].age);break;case 5:printf("salary:");scanf("%s",worker[i].salary);break;case 6:printf("edu:");scanf("%s",worker[i].edu);break;case 7:printf("address:");scanf("%s",worker[i].address);break;case 8:printf("tel:");scanf("%s",worker[i].tel);break;case 9:menu();break;}puts("\nNow:\n");printf_face();printf_one(i);printf("\n确定?\n\n\t1).是2).否,重新修改3).不保存退出[ ]\b\b");scanf("%d",&w1);if(w1==1)save(n);}while(w1==2);return(w1);}printf_face() //显示数据结构项目{ printf("\n\t工号姓名性别年龄工资学历地址电话号码\n"); }void enter() //输入模块{ int i,n;printf("输入多少个职工信息(0-%d):",N-1);scanf("%d",&n);printf("\n 请输入职工信息\n\n");for(i=0;i<n;i++)input(i);if(i!=0)save(n);printf_back();}browse() //浏览模块{ int i,j,n;n=load();printf_face();for(i=0;i<n;i++){if((i!=0)&&(i%10==0)){printf("\n\n按任意键显示下一页...");getch();puts("\n\n");}printf_one(i);}printf("\t这里有 %d 条记录.\n",n);printf("\n按任意键返回...");getch();menu();}modify() //修改模块{struct worker s;FILE *fp;int i,n,k,w0=1,w1,w2=0;n=load();do{k=-1;printf_face();for(i=0;i<n;i++){if((i!=0)&&(i%10==0)) //目的是分屏显示{printf("\n\n记住要修改的工号.按任意键显示下一页");getch();puts("\n\n");}printf_one(i); //调用显示一个记录的函数}do{printf("\n\n输入要修改的职工工号! 工号:");scanf("%s",s.id); //输入要修改的IDfor(i=0;i<n;i++) //查找要修改的数据if(strcmp(s.id,worker[i].id)==0){k=i; //找到要修改的记录s=worker[i]; //把worker[i]备份,以便恢复}if(k==-1)printf("\n\n未找到请重输");}while(k==-1); //当k=-1表示没有找到printf_face(); //调用显示数据结构项目的函数printf_one(k); //调用显示一个记录的函数w1=modify_data(k,n); //修改记录并返回保存控制值w1,w1=1表示用户已确认修改if(w1==1){printf("\Successful^_^.\n\n修改另一个?\n\n\t1).是 2).否,保存退出\t[ ]\b\b");scanf("%d",&w0);w2=1; //用来控制保存,使w2=1是标记已有过修改}else{w0=0;if(w2==1)worker[k]=s;}if(w0!=1&&w2==1)save(n);}while(w0==1);menu();}search() //查询模块{ int c,w1;do{puts("\nsearch by=>\n\n1).工号 2}.学历 3).取消并返回"); printf("Which you needed?:[ ]\b\b");scanf("%d",&c);if(c>3||c<1){ puts("\nchoice error!please again!");getchar();}}while(c>3||c<1);{switch(c){case 1:search1();break;case 2:search2();break;case 3:menu();break;}}}search1() //按工号查询模块{int i,n,k,w1=1,w2,w3,w4;struct worker s;n=load();do{do{k=-1;printf("\n\n输入要查询的工号! id:");scanf("%s",s.id);printf_face();for(i=0;i<n;i++)if(strcmp(s.id,worker[i].id)==0){k=i;printf_one(k);break;}if(k==-1){printf("\n\nNo exit!please");printf("\n\n继续查找?\n\t1).是 2).否,返回 [ ]\b\b");scanf("%d",&w1);if(w1==2) menu();}}while(k==-1&&w1==1);w4=0;w3=0;if(k!=-1){printf("\n\n接下来干什么?\n\t1).查找另一个 2).修改 3).返回菜单[ ]\b\b");scanf("%d",&w2);switch(w2){case 1:search1();break;case 2:w3=modify_data(k,n);break;case 3:{menu();break;}}}}while(w2==1);menu();}search2() //按学历查询模块{int i,n,k,w1=1,w2,w3,w4;struct worker s;n=load();do{do{k=-1;printf("\n\n请输入你要查询的学历:\n");scanf("%s",);printf_face();for(i=0;i<n;i++)if(strcmp(,worker[i].edu)==0){k=i;printf_one(k);}if(k==-1){printf("\n\nNo exit!please");printf("\n\n继续查找?\n\t1).是 2).否,返回 [ ]\b\b");scanf("%d",&w1);if(w1==2) menu();}}while(k==-1&&w1==1);w4=0;w3=0;if(k!=-1){printf("\n\n接下来干什么?\n\t1).查找另一个 2).修改 3).返回菜单[ ]\b\b");scanf("%d",&w2);switch(w2){case 1:search2();break;case 2:w3=modify_data(k,n);break;case 3:{menu();break;}}}}while(w2==1);menu();}menu(){int n,w1;do{puts("\t\t*******************菜单*******************\n\n");puts("\t\t\t\t1.录入职工信息");puts("\t\t\t\t2.浏览职工信息");puts("\t\t\t\t3.查询职工信息");puts("\t\t\t\t4.修改职工信息");puts("\t\t\t\t5.退出");puts("\t\t****************************************\n\n");printf("请选择(1~5): [ ]\b\b");scanf("%d",&n);if(n<1||n>5) //对选择的数字作判断{w1=1;getchar();}else w1=0;} while(w1==1);switch(n){case 1:enter();break; //录入 case 2:browse();break; //浏览 case 3:search();break; //查询 case 4:modify();break; //修改 case 5:exit(0); //退出}}main(){menu();}7.程序运行结果下面是各个模块的的界面截图(1)、主菜单(2)、输入模块(3)、浏览模块(3)、查找模块(4)、修改模块8.编程中遇到的困难及解决方法温故而知新,可以为师矣。

《C语言程序课程设计》格式及写作要求

计算机科学系课程设计报告2013 — 2014学年第二学期课程名称设计题目学生姓名学号专业班级指导教师目录(三号黑体,居中)(空1行, 四号宋体,行间距:一般固定值20磅)另起一页1 设计任务书(一级标题标号:小三号黑体;下空1行)(空1行)1.1 题目与要求(二级标题标号:四号黑体;上空1行)本部分主要描述:本组成员所要实现的题目及其具体要求。

请标出组员的分工,分别叙述各人主要工作及实现的主要内容(小四,宋体)例如:本组计划(成员为:张三,李四,王二合作)编写一个学生信息管理系统,主要用来管理学生基本信息及成绩信息。

具体要求如下:1、建立学生信息,每个学生的信息包括:学号、姓名、性别、班级、成绩;2、求出每个学生的平均分;3、排序:分别按平均分排序、按学号排序;4、根据学号查询成绩;5、输出:…根据分工,张三的主要工作是……根据分工,李四的主要工作是……根据分工,王二的主要工作是……(空1行)l.2 本系统涉及的知识点例如:结构、数组、循环、函数、分支、指针(小四,宋体)(空1行)2 功能设计(空1行)2.1 算法设计(二级标题标号:四号黑体;上空1行)本部分主要描述,所做工作中的所有模块或部分、每一个模块或部分的算法设计(小四,宋体)注意:只画功能模块图,不包含程序及流程图。

例如:1、本系统需要实现的功能要求:利用switch 语句设计如图1所示的主菜单(图中的文字宋体5号): 请输入选项编号(1~6)(所有的图统一编号,宋体5号,置于图下的中间。

)2、选择3后,调用排序函数,进入函数后利用switch 语句实现一个如图2所示的菜单,该菜单中每个选项调用一个函数3、根据所选菜单设计相应的功能函数:1) 输入函数input :利用循环输入的方式,将有关信息存入结构数组,结构数组根据实际的人数,采用动态方式建立…… 2)求平均分函数average :………2.2 主要模块流程图(二级标题标号:四号黑体;上空1行)本部分主要描述,所做工作中对应主要模块给出详细流程图(画法参阅课本第三章)。

c语言课程设计要求

c语言课程设计要求c语言课程设计要求2009-2010学年第一学期《C/C++ 语言程序设计》课程设计一、课程设计的目的1.复习、巩固C语言的基础知识,进一步加深对C语言的理解和掌握;2.为学生提供一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机结合起来,锻炼学生的分析解决实际问题的能力。

提高学生实践编程的能力; 3 .培养学生在项目开发中团队合作精神、创新意识及能力。

二、课程设计题目安排课程设计题目可从以下题目中选择,也可经老师同意自拟题目。

可以多人合作完成(每组最多3人),合作完成的必须明确每个人的具体任务,每人单独上交课程设计报告。

三、课程设计题目第1题学生档案管理设计一个学生档案管理程序。

该程序应该具有下列功能:(1)通过键盘输入某位学生的相关信息。

包括学号、姓名、性别、年龄、出生年月、电话、E-mail、籍贯等;(2)浏览学生信息;(3)根据学号修改、删除学生信息;(4)能按学号、姓名、年龄等关键字排序;(5)统计学生年龄的平均值及各年龄段人数;(6)用链表实现,原始数据输入和结果输出使用文件存放。

第2题图书登记管理设计一个图书登记管理程序。

该程序应该具有下列功能:(1)通过键盘输入某本图书的信息,包括编号、书名、作者姓名、出版社、价格、出版时间等;(2)浏览图书信息;(3)按编号、作者姓名、书名、出版社等关键字查询信息;(4)根据图书编号删除或修改该本图书的信息;(5)按指定关键字排序功能。

(5)统计某出版社所有图书的平均价格、出版图书最多的作者及其出版的数目。

(6)原始数据输入和结果输出使用文件存放。

第3题小型通讯录管理设计一个实用的小型通讯录管理程序。

该程序应该具有下列功能:(1)能建立、修改、增删通讯录中条目,通讯录中的信息包括类别、编号、姓名、班级、电话、住址等;(2)能够按多种方式进行查询(如姓名、电话);(3)能够对已有信息进行修改、删除;(4)按指定关键字排序。

C程序设计课程设计任务书

C程序设计课程设计任务书一、课程设计题目和总体要求1、题目:《学生成绩管理系统》的设计与实现;2、总体要求:分析课程设计题目的要求;写出详细设计说明;编写程序代码,调试程序使其能正确运行;设计完成的软件要便于操作和使用;设计完成后提交课程设计报告。

二、课程设计目的1、进一步掌握和利用C语言进行程序设计的能力;2、进一步理解和运用结构化程序设计的思想和方法;3、初步掌握开发一个小型实用系统的基本方法;4、学会调试一个较长程序的基本方法;5、学会利用流程图或N-S图表示算法;6、掌握书写程序设计开发文档的能力(书写课程设计报告)三、课程设计内容1、每一条记录包括一个学生的学号、姓名、3门课成绩、平均成绩;2、输入功能:可以一次完成若干条记录的输入;3、显示功能:完成全部学生记录的显示;4、查找功能:完成按姓名查找学生记录,并显示;5、排序功能:按学生平均成绩进行排序;6、插入功能:按平均成绩高低插入一条学生记录;7、将学生成绩记录在文件score中;8、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观。

可以看出,本程序应该完成以下功能:1、学生记录的输入2、追加学生记录3、修改记录4、删除记录5、浏览全部记录6、查找记录(按姓名查找)7、插入记录8、对记录进行排序(按平均成绩排序)9、退出四、课程设计报告的内容1、课程设计名称、班级、学号、学生姓名和课程设计起止日期2、课程设计目的和要求3、课程设计任务要求4、详细设计说明5、软件使用说明6、课程设计心得与体会7、附录1:参考文献8、附录2:部分程序清单(带有较详细的注释)五、评分依据1、根据平时上机考勤、表现和进度,教师将每天点名和检查2、根据课程设计完成情况,必须有可运行的软件3、根据课程设计报告的质量,如有雷同,则所有雷同的所有人均判为不及格六、进度计划1、第一天分析课题的要求,编写详细设计说明2、第二天交详细设计说明电子稿,编程3、第三天编程及调试4、第四天写课程设计报告,提交软件5、第五天提交课程设计报告,答辩。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计题目详细要求 题目1 “高校人员信息管理系统设计” 1、问题描述 某高校有四类员工:教师、实验员、行政人员,教师兼行政人员;共有的信息包括:编号、姓名、性别、年龄等。其中,教师还包含的信息有:所在系部、专业、职称;实验员还包含的信息由:所在实验室、职务;行政人员还包含的信息有:政治面貌、职称等。 2、功能要求 (1)添加功能:程序能够任意添加上述四类人员的记录,可提供选择界面供用户选择所要添加的人员类别,要求员工的编号要唯一,如果添加了重复编号的记录时,则提示数据添加重复并取消添加。 (2)查询功能:可根据编号、姓名等信息对已添加的记录进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。 (3)显示功能:可显示当前系统中所有记录,每条记录占据一行。 (4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。 (5)删除功能:主要实现对已添加的人员记录进行删除。如果当前系统中没有相应的人员记录,则提示“记录为空!”并返回操作;否则,输入要删除的人员的编号或姓名,根据所输入的信息删除该人员记录,如果没有找到该人员信息,则提示相应的记录不存。 (6)统计功能:能根据多种参数进行人员的统计。能统计四类人员数量以及总数, 统计男、女员工的数量。 (7)保存功能:可将当前系统中各类人员记录存入文件中,存入方式任意。 (8)读取功能:可将保存在文件中的人员信息读入到当前系统中,供用户进行使用。 3、问题的解决方案 根据系统功能要求,可以将问题解决分为以下步骤: (1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计; (2)分析系统中的各个实体及它们之间的关系; (3)根据问题描述,设计系统的类层次; (4)完成类层次中各个类的描述; (5)完成类中各个成员函数的定义; (6)完成系统的应用模块; (7)功能调试; (8)完成系统总结报告。

题目2 “公司员工信息管理系统设计” 1、问题描述 某公司需要存储雇员的编号、姓名、性别、所在部门,级别,并进行工资的计算。其中,雇员分为经理、技术人员、销售人员和销售经理。 设计一程序能够对公司人员进行管理,应用到继承、抽象类、虚函数、虚基类、多态和文件的输入/输出等内容。 2、功能要求 (1)添加功能:程序能够任意添加上述四类人员的记录,可提供选择界面供用户选择所要添加的人员类别,要求员工的编号要唯一,如果添加了重复编号的记录时,则提示数据添加重复并取消添加。 (2)查询功能:可根据编号、姓名等信息对已添加的记录进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息; (3)显示功能:可显示当前系统中所有记录,每条记录占据一行。 (4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。 (5)删除功能:主要实现对已添加的人员记录进行删除。如果当前系统中没有相应的人员记录,则提示“记录为空!”并返回操作;否则,输入要删除的人员的编号或姓名,根据所输入的信息删除该人员记录,如果没有找到该人员信息,则提示相应的记录不存。 (6)统计功能:能根据多种参数进行人员的统计。例如,统计四类人员数量以及总数, 或者统计男、女员工的数量等信息。 (7)保存功能:可将当前系统中各类人员记录存入文件中,存入方式任意。 (8)读取功能:可将保存在文件中的人员信息读入到当前系统中,供用户进行使用。 3、问题的解决方案 根据系统功能要求,可以将问题解决分为以下步骤: (1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计; (2)分析系统中的各个实体及它们之间的关系; (3)根据问题描述,设计系统的类层次; (4)完成类层次中各个类的描述; (5)完成类中各个成员函数的定义; (6)完成系统的应用模块; (7)功能调试; (8)完成系统总结报告。

题目3 “媒体库管理系统设计” 1、问题描述 图书馆中的资料很多,如果能分类对其资料流通进行管理,将会带来很多方便,因此需要有一个媒体库管理系统。 图书馆共有三大类物品资料:图书、视频光盘、图画。 这三类物品共同具有的属性有:编号、标题、作者、评级(未评级,一般,成人,儿童)等。其中图书类增加出版社、ISBN号、页数等信息;视频光盘类增加出品者的名字、出品年份和视频时长等信息;图画类增加出品国籍、作品的长和宽(以厘米计,整数)等信息。 2、功能要求 (1)添加物品:主要完成图书馆三类物品信息的添加,要求编号唯一。当添加了重复的编号时,则提示数据添加重复并取消添加;当物品库已满,则提示不能再添加新的数据。 (2)查询物品 可按照三种方式来查询物品,分别为: 按标题查询:输入标题,输出所查询的信息,若不存在该记录,则提示“该标题不存在!”; 按编号查询:输入编号,输出所查询的信息,若不存在该记录,则提示“该编号不存在!”; 按类别查询:输入类别,输出所查询的信息,若不存在记录,则提示“该类别没有物品!”; (3)显示物品库:输出当前物品库中所有物品信息,每条记录占据一行。 (4)编辑物品:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。 (5)删除物品:主要完成图书馆物品信息的删除。如果当前物品库为空,则提示“物品库为空!”,并返回操作;否则,输入要删除的编号,根据编号删除该物品的记录,如果该编号不在物品库中,则提示“该编号不存在”。 (6)统计信息 输出当前物品库中总物品数,以及按物品类别,统计出当前物品中各类别的物品数并显示。 (7)物品存盘:将当前程序中的物品信息存入文件中。 (8)读出物品:从文件中将物品信息读入程序。 3、问题的解决方案 根据系统功能要求,可以将问题解决分为以下步骤: (1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计; (2)分析系统中的各个实体及它们之间的关系; (3)根据问题描述,设计系统的类层次; (4)完成类层次中各个类的描述; (5)完成类中各个成员函数的定义; (6)完成系统的应用模块; (7)功能调试; (8)完成系统总结报告。

题目4 “车辆管理系统设计” 1、问题描述 车辆管理系统主要负责各种车辆的常规信息管理工作。 系统中的车辆主要有大客车、小轿车和卡车。每种车辆有车辆编号、车牌号、车辆制造公司、车辆购买时间、车辆型号(大客车、小轿车和卡车)、总公里数、耗油量/公里、基本维护费用、养路费、累计总费用等信息。大客车还有载客量(最大载客数)信息,小轿车还有箱数(两厢或三厢)信息,卡车还有载重量等信息。 每台车辆当月总费用=油价*耗油量/公里+基本维护费用。 基本维护费用:客车:2000元/月,小轿车:1000元/月,卡车:1500元/月 2、功能要求 (1)添加车辆:主要完成车辆信息的添加,要求编号唯一。当添加了重复的编号时,则提示数据添加重复并取消添加;当车辆信息库已满,则提示不能再添加新的数据。 (2)查询车辆: 可按照三种方式来查询物品,分别为: 按车辆制造公司查询:输入车辆制造公司,输出所查询的信息,若不存在该记录,则提示“该车辆制造公司不存在!”; 按编号查询:输入编号,输出所查询的信息,若不存在该记录,则提示“该编号不存在!”; 按类别查询:输入类别,输出所查询的信息,若不存在记录,则提示“该类别没有车辆!”; (3)显示车辆信息库:输出当前车辆信息库中所有车辆信息,每条记录占据一行。 (4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。 (5)删除车辆:主要完成车辆信息的删除。如果当前车辆信息库为空,则提示“车辆信息库为空!”,并返回操作;否则,输入要删除的编号,根据编号删除该车辆的记录,如果该编号不在车辆信息库库中,则提示“该编号不存在”。 (6)统计信息 输出当前车辆信息库中总物品数,以及按车辆类别,统计出当前车辆信息库中各类别的物品数并显示。 (7)车辆信息存盘:将当前程序中的车辆信息存入文件中。 (8)读出车辆信息:从文件中将车辆信息读入程序。 3、问题的解决方案 根据系统功能要求,可以将问题解决分为以下步骤: (1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计; (2)分析系统中的各个实体及它们之间的关系; (3)根据问题描述,设计系统的类层次; (4)完成类层次中各个类的描述; (5)完成类中各个成员函数的定义; (6)完成系统的应用模块; (7)功能调试; (8)完成系统总结报告。

题目5 “学生选修课程系统设计” 1、问题描述 高校中学生信息包括:学号、姓名、性别、年龄、系别、班级、联系方式等信息。 课程信息包括:课程代码、课程名称、课程性质、总学时、学分、开课学期、选修人数等信息。学生可对课程信息进行查询,选修符合要求的课程。 根据课程信息和学生信息完成对课程的选修,需要专门的一个管理类来完成选修工作。 2、功能要求 (1)添加功能:程序能够任意添加课程和学生记录,可提供选择界面供用户选择所要添加的类别,要求编号要唯一,如果添加了重复编号的记录时,则提示数据添加重复并取消添加。 (2)查询功能:可根据编号、姓名等信息对已添加的学生和课程记录进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。 (3)显示功能:可显示当前系统中所有学生和课程的记录,每条记录占据一行。 (4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意编号的唯一性。 (5)删除功能:主要实现对已添加的学生和课程记录进行删除。如果当前系统中没有相应的记录,则提示“记录为空!”并返回操作。 (6)统计功能:能根据多种参数进行统计。能统计学生人数、课程的门数、选修某门课程的学生的相关信息。 (7)保存功能:可将当前系统中各类记录存入文件中,存入方式任意。 (8)读取功能:可将保存在文件中的信息读入到当前系统中,供用户进行使用。 3、问题的解决方案 根据系统功能要求,可以将问题解决分为以下步骤: (1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计; (2)分析系统中的各个实体及它们之间的关系; (3)根据问题描述,设计系统的类层次; (4)完成类层次中各个类的描述; (5)完成类中各个成员函数的定义; (6)完成系统的应用模块; (7)功能调试; (8)完成系统总结报告。

题目6 “学生成绩管理系统设计”

相关文档
最新文档