班级。姓名。学号。
指导教师。设计时间:
1.基本要求题
2.1.1 问题描述………3
1.2 源程序3
1.3 流程图6
1.4 运行结果7
2.程序改错题。
2.1 源**7
2.2 错误分析7
2.3 流程图8
2.4 运行结果8
3. 综合题。
3.1.题目——成绩管理系统。8
3.2程序分工9
3.3设计思路9
3.4 程序源**10
3.5 运行结果。
3.6调试报告。
4. 课程设计的心得体会。
1.基本要求题。
1.1问题描述。
用条件编译方法实现以下功能:输入一行电报文字,可以任选两种输出,一为原文输出;一为将字母变成其下一字母(如’a’变成’b’……z’变成’a’。其他字符不变)。
用#define命令来控制是否要译成密码。例如:#define change 1 ,则输出密码。
若#define change 0,则不译成密码,按原码输出。
1.2源程序。
#include <>
#define change 1
int main()
char c[100];
char *p;
printf("input string");
scanf("%s", c);
p = c;
if(1 ==change)
while(*p !=0')
elseprintf("%s",c);
printf("");
return 0;
1.3流程图。
图1 流程图。
1.4运行结果。
图2 运行结果。
2.程序改错题。
2.1源**。
#include <>
#include <>
double fun (int m)
main ()
int n=5;
clrscr();
printf("rhe result is %1f",fun(n));
2.2错误分析。
此程序意在借助于函数fun,求t=1-1/2*2-1/3*3-…-1/m*m。错误之处在:露掉了i=m,应把i< m改为i <=m;1的数据类型不搭配,应把1改为1.
0;没有定义clrscr,应将clrscr定义为void型。
2.3流程图。
图3 t=1-1/2*2-1/3*3-…-1/m*m的流程图。
2.4 运行结果。
图4 t=1-1/2*2-1/3*3-…-1/m*m的运行结果。
3. 综合题。
3.1题目 ——班级成绩管理系统。
3.1.1问题描述:
对一个有n个学生的班级,每个学生有m门课程。系统实现对班级成绩的录入,显示,排序,保存等操作的管理。
3.1.2 功能要求:
1. 本系统采用一个包含n个数据的结构体数组,每个数据的结构应当包括:学号,姓名,m门课程的名称。
2.本系统显示这样的菜单:
a. 成绩录入。
b. 成绩显示。
c. 成绩保存。
d. 成绩排序。
e. 成绩修改(要求先输入密码)
f. 成绩统计。
(1) 显示每门课程成绩最高学生的级本信息。
(2) 显示每门课成绩的平均成绩。
(3) 显示超过某门课程平均成绩的学生人数。
3.执行一个具体功能后,程序将重新显示菜单。
4.将学生成绩保存到文件中。
3.1.3 算法提示:
1. 数据结构:结构体类型数组。
2. 数据库结构:该系统的基本数据库如表1所示。
3.1.4 测试数据:
学生人数n=10
课程们数m=4
课程名:数学,语文,英语,政治。
3.2程序分工:
由李凯魏芳华,李丽,庞军飞,王国龙共同完成。
3.3设计思路。
3.3.1 思路。
定义结构体数组,定义结构体成员num(学号),name(姓名),math(数学),chinese(语文),english(英语),politics(政治),sum(总分),来实现成员的引用。并且通过函数调用以及swich语句,来分别实现成绩的录入,显示,保存,排序,修改与统计的的选择的功能。
主函数:通过外层用do—while语句,内层用switch—case语句二者嵌套实现多次选则和循环。
录入功能函数:通过for循环语句分别对结构体变量进行赋值。
显示功能函数:通过for循环语句将录入信息输出。
保存功能函数:通过文件指针将数据保存到所要求的文件中。
排序功能函数:通过运用排冒泡排序法,对成员进行总分由高到底排序。
修改功能函数:先进行密码验证,若正确,才能进行修改,否则推出修改界面。进入后,用动do—while控制进行多次循环修改,修改时,用比较学号的方法,找到该同学,对该同学的成绩进行修改。
统计功能函数:该函数分为三个部分,第一,每门课程的最高成绩;第二,平均成绩;第三,超过平均成绩的人数,调用函数为do—while和switch—case语句来实现函数的调用,来实现该函数功能。
统计每门课程的最高成绩功能的函数:通过“大擂台法”用for循环语句来找出最高的成绩,同时输出该同学成绩。
求平均成绩函数:通过总分和sum/科目数量来实现。
求超过平均分的人数:通过for循环让他们每个人的该门课程与平均分比较,从而得出结果并输出。
3.3.2 流程图。
图3.31 主函数。
3.4 程序源**。
#include<>
#include<>
#include<>
#include<>
#define n 10
*定义结构体数组*/
struct student
stu[n],temp;
float max1,max2,max3,max4定义全局变量*/
double sum1,sum2,sum3,sum4定义全局变量*/
double **erage1,**erage2,**erage3,**erage4定义全局变量*/
int main主函数。
void enter成绩录入函数*/
void show成绩显示函数*/
void store成绩保存函数*/
void rank成绩排序函数*/
void modity();成绩修改函数*/
void stat成绩统计函数*/
char ch;do
printf("\tn");
printf("\tn");
printf("\t班级成绩管理系统n");
printf("\tn");
printf("\t1:成绩录入n");
printf("\t2:成绩显示n");
printf("\t3:成绩保存n");
printf("\t4:成绩排序n");
printf("\t5:成绩修改n");
printf("\t6:成绩统计n");
printf("\t0:退出系统n");
printf("\tn");
printf("\t\t请选择0~6的操作:")
ch=getchar();
switch(ch)
case '1':enter();break;
case '2':show();break;
case '3':store();break;
case '4':rank();break;
case '5':modity();break;
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月 计算机科学与技...