C语言课程设计Word文件下载.docx

上传人:b****2 文档编号:15183547 上传时间:2022-10-28 格式:DOCX 页数:14 大小:222.27KB
下载 相关 举报
C语言课程设计Word文件下载.docx_第1页
第1页 / 共14页
C语言课程设计Word文件下载.docx_第2页
第2页 / 共14页
C语言课程设计Word文件下载.docx_第3页
第3页 / 共14页
C语言课程设计Word文件下载.docx_第4页
第4页 / 共14页
C语言课程设计Word文件下载.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

C语言课程设计Word文件下载.docx

《C语言课程设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《C语言课程设计Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。

C语言课程设计Word文件下载.docx

(每个试题包括题干、4个备选答案、标准答案)

(2)试题录入:

可随时增加试题到试题库中

(3)试题抽取:

每次从试题库中可以随机抽出N道题(N由键盘输入)

(4)答题:

用户可实现输入自己的答案

(5)自动判卷:

系统可根据用户答案与标准答案的对比实现判卷并给出成绩。

2、设计原始资料

《C程序设计》

三、设计完成后提交的文件和图表

1.计算说明书部分

数据库设计分析

2.图纸部分:

程序流程图

4、进程安排

1.分析题目。

2.查找资料。

3.设计流程图。

4.程序编写,修改题目。

5.总结收获。

5、主要参考资料

c程序设计(第四版)谭浩强著清华大学出版社

成绩评定表

作品成绩

报告成绩

口试(答辩)成绩

总评成绩

目录

1课程设计概述8

1.1单项选择题标准化考试系统功能概述8

1.2开发环境概述8

2单项选择题标准化考试系统总体设计9

2.1单项选择题标准化考试系统总体设计思想9

2.2总体设计流程图9

3单项选择题标准化考试系统详细设计10

4程序测试14

4.1菜单界面14

4.2添加选择题界面15

4.3回答选择题界面16

4.4自动评判和打分界面16

设计体会及今后的改进意见17

参考文献18

摘要

通过这次的设计使我们将理论教学中涉及到的知识点贯穿起来,对不同的数据类型、程序控制结构、数据结构作一比较和总结,结合设计题目进行综合性应用,对所学知识达到融会贯通的程度。

通过课程设计,学生在下述各方面的能力应该得到锻炼:

进一步巩固、加深学生所学专业课程课本的基本理论知识,理论联系实际,进一步培养学生综合分析问题,解决问题的能力。

全面考核学生所掌握的基本理论知识及其实际业务能力,从而达到提高学生素质的最终目的。

利用所学知识,开发小型应用系统,掌握运用C语言编写调试应用系统程序,训练独立开发应用系统,进行数据处理的综合能力。

对于给定的设计题目,如何进行分析,理清思路,并给出相应的数学模型。

掌握结构化程序设计方法,熟悉面向对象程序设计方法。

熟练掌握C语言的基本语法,灵活运用各种数据类型。

进一步掌握在集成环境下如何调试程序和修改程序

摘要:

应用,基础,分析,开发,编写调试,修改。

1课程设计概述

单项选择题标准化考试系统功能概述

(1)用文件保存试题库。

(2)试题录入:

(3)试题抽取:

(4)答题:

(5)自动判卷:

开发环境概述

C-Free是一款基于Windows的C/C++集成化开发软件(IDE)。

利用本软件,使用者可以轻松地编辑、编译、连接、运行、调试C/C++程序。

特别地,这款软件对于C/C++的学习者非常容易使用,是迅速提高C/C++水平的好帮手。

当然,C/C++高手也会在其中找到许多惊喜的功能。

C-Free包含下列主要特征:

支持MinGW编译器和C/C++解释器Ch

集成化的调试环境

工程管理

可定制的语法加亮编辑器

智能输入(大大地提高代码输入效率)

函数列表

集成化的C/C++库函数帮助

快速创建控制台、窗口和DLL应用

借助工程模板创建自己想要的工程类型

完善的查找替换功能

可定制的代码模板

支持Window图形界面应用的开发

对话框资源编辑器

2单项选择题标准化考试系统总体设计

2.1单项选择题标准化考试系统总体设计思想

单项选择题标准化考试系统的功能模块有:

提供菜单界面,方便用户对程序个功能进行选择,选择要实现的功能按enter键进入该功能。

接受用户输入的一个字符串,其中可以输入英文字符、数字字符、空格及其他类型字符,按enter键结束输入并将分别统计的各类字符统计结果存储和读取。

先定义一个结构体让结构体里面包括选择题题目,选择题选项,正确答案。

然后定义一个随机函数,一个输入试题函数和标准答案函数,一个输出试题函数和标准答案函数,一个保存试题函数,一个回答试题函数并统计分数的函数,并通过列表程序控制输出题目的随机性,将输出输入有机地结合在一起,最后通过主函数进行调用,完成程序。

2.2总体设计流程图

3单项选择题标准化考试系统详细设计

#include<

stdio.h>

stdlib.h>

\\应用动态分配存储空间\\

time.h>

#defineLENsizeof(structquestion)

structquestion

{

charask[200];

\\选择题题目\\

charanswer[4][80];

\\选择题选项,每个答案长度\\

intright;

\\正确答案\\

structquestion*next;

\\next指针类型成员,指向struct\\

\\question类型数据(next所在的结构体类型)实现问题的连续输入输出\\

};

intmenu(void);

\\声明菜单选择函数

structquestion*seek(structquestion*seek,longlen,longmax);

\\寻找读取答案位置

structquestion*insert(structquestion*fst,conststructquestion*ad);

\\插入试题

voidgetquestion(structquestion*s);

\\获取问题和选项,以及正确答案

voidsavefile(conststructquestion*a,FILE*sf);

\\保存正确答案在文件中

structquestion*loadfile(structquestion*b,FILE*lf);

\\读取题目,将题目添加到列表中

intgetanswer(void);

\\得到试题答案

intgetyouranswer(void);

\\得到考生的答案

voidexplainquestion(conststructquestion*q,intn);

\\统计答对的题目数,显示得分

intmenu(void)\\选择菜单

intv;

printf("

1—添加选择题\n2—回答选择题\n3—退出\n"

);

scanf("

%d"

&

v);

returnv;

}

structquestion*seek(structquestion*seek,longlen,longmax)

inti;

srand(time(NULL));

while(i=rand()%max+len<

max);

while(i--)

seek=seek->

next;

returnseek;

structquestion*insert(structquestion*fst,conststructquestion*ad)

structquestion*newptr=(structquestion*)malloc(LEN);

if(newptr==NULL)

exit(0);

*newptr=*ad;

newptr->

next=fst;

returnnewptr;

voidgetquestion(structquestion*s)

inti=0;

输入选择题目:

\n"

%s"

s->

ask);

while(i<

4)

{

printf("

请输入选项%c的答案:

i+'

A'

scanf("

answer[i++]);

}

s->

right=getanswer();

voidsavefile(conststructquestion*a,FILE*sf)

fclose(sf);

if((sf=fopen("

kstm.dat"

"

w"

))==NULL)

return;

while(a)

fwrite(a,sizeof(structquestion),1,sf);

a=a->

structquestion*loadfile(structquestion*b,FILE*lf)

structquestiontemp;

while(fread(&

temp,sizeof(structquestion),1,lf))

b=insert(b,&

temp);

returnb;

voidexplainquestion(conststructquestion*que,intn)

inti=0,t=0;

charresult[1001],*p=result;

for(i=0;

t<

n;

que=que->

next,t++)

%s\nA.%s\nB.%s\nC.%s\nD.%s\n\n"

que->

ask,que->

answer[0],que->

answer[1],que->

answer[2],que->

answer[3]);

if((*p=que->

right)==(*(p+1)=getyouranswer()))

++i;

p+=2;

*p='

\0'

;

\n%-20s%-20s%s\n"

标准答案"

你的答案"

评判"

for(p=result;

*p!

='

p+=2)

%-20c%-20c%s\n"

*p,*(p+1),*p==*(p+1)?

"

正确"

:

错误"

\n你回答了%d道题,答对%d道题,得分:

%.2f\n\n"

n,i,(float)(i*100.00/n));

intgetanswer(void)

staticinti=1;

intc=0;

while(c<

'

||c>

D'

请输入第%d题的正确答案:

i);

%c"

c);

if(c>

96)

c=c-32;

}

i++;

returnc;

}

intgetyouranswer(void)

printf

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

当前位置:首页 > 教学研究 > 教学计划

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

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