2011C课设模板
- 格式:doc
- 大小:388.00 KB
- 文档页数:25
C语言程序设计
课程设计报告
设计题目:教小学生学英语
专 业
电子科学与技术
班 级 112班
学 生 张杰
指导教师 乔世杰
2012 年 春季 学期
设计任务:C语言课程设计任务书16
题目:计算机辅助教学(CAI)软件开发:教小学生学英语。
功能:
1、屏幕上随机出现一个汉语单词,英语单词,汉语词组,英语词组
提示小学生给出相应答案,答错了要提示要求重新输入,直到对为止。要统计给分,且累计,够一定分数后可进级,即从单词到词组,从词组到短句。同样,也可降级。起步阶段可各选30个,软件可扩充,即扩大词库的容量。
(rand(),#include 结构体、文件或数组)
2、保存:将相关数据写入磁盘文件,便于存、取操作。
分步实施:
1、初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;
2、完成最低要求:能教单词,并有统计功能,即一次答对的成功率为90%
以上后可晋级;
3、进一步要求:将词库、当前晋级等级保存在磁盘文件,每次登录时读取。
要求:
1、用C语言实现程序设计;
2、利用结构体进行相关信息处理;
3、系统的各个功能模块要求用函数的形式实现;
4、界面友好(良好的人机交互),程序要有注释。
平时:
验收:
报告:
总评成绩: 指导教师签名:
源程序:#include
#include
#include
#include
#define SIZE 100
//声明函数,结构
void zero();//主显示界面
void select();//选择界面
void save();//保存界面函数
void save1();//保存单词函数
void save2();//保存短语函数
void save3();//保存短句函数
void see();//查看词库界面
void see1();//查看单词词库
void see2();//查看短语词库
void see3();//查看短句词库
void one();//学习单词函数
void two();//学习短语函数
void three();//学习短句函数
struct word_list
{
char a1[10];
char b1[10];
}word[SIZE];
struct phrase_list
{
char a2[20];
char b2[20];
}phrase[SIZE];
struct sentence_list
{
char a3[100];
char b3[100];
}sentence[SIZE];
//定义函数
void main()
{
zero();
select();}
void zero()
{
printf("\n");
printf("\n\n\n");
printf("\t|
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@|\n");
printf("\t| |\n");
printf("\t| |\n");
printf("\t| ------快-乐-学-习—&&&—快-乐-成-长----- |\n");
printf("\t| |\n");
printf("\t| !!!love me, love english!!! |\n");
printf("\t| |\n");
printf("\t| |\n");
printf("\t| 1.开始学习 |\n");
printf("\t| |\n");
printf("\t| 2.扩大词库 |\n");
printf("\t| |\n");
printf("\t| 3.查看词库 |\n");
printf("\t| |\n");
printf("\t| 4.退出系统 |\n");
printf("\t| |\n");
printf("\t| 制作者:西安理工大学 zj |\n");
printf("\t| |\n");
printf("\t|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@|\n");
}
void select()
{
int a;
printf("\t\t 请选择: ");
scanf("%d",&a);
switch(a)
{
case 1:one();break;
case 2:save();break;
case 3:see();break;
case 4:exit(0);
default: printf("error\n");
}
}
void save()
{
int b;
printf("\n");
printf("\n");
printf("\t\t|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|\n");
printf("\t\t| |\n");
printf("\t\t| ------快-乐-学-习—&&&—快-乐-成-长----- |\n");
printf("\t\t| |\n");
printf("\t\t| !!!love me, love english!!! |\n");
printf("\t\t| |\n");
printf("\t\t| 1.记录单词 |\n");
printf("\t\t| |\n");
printf("\t\t| 2.记录词组 |\n");
printf("\t\t| |\n");
printf("\t\t| 3.记录句子 |\n");
printf("\t\t| |\n");
printf("\t\t| 4.返回 |\n");
printf("\t\t| |\n");
printf("\t\t|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|\n");
printf("\t\t 请输入: ");
scanf("\n %d",&b);
switch(b)
{
case 1:save1();break;
case 2:save2();break;
case 3:save3();break;
case 4:zero(); select();break;
default: printf("error\n");
}
}
void save1()
{
int i,j,m1;
FILE *fp1,*fi1;
if((fp1=fopen("word_list","r"))==NULL)
{
fp1=fopen("word_list","wb");fclose(fp1);}
if((fi1=fopen("c1","r"))==NULL)
{
m1=0;
fi1=fopen("c1","wb");
fwrite(&m1,sizeof(int),1,fi1);
fclose(fi1);}
if((fi1=fopen("c1","rb"))!=NULL)
{
fi1=fopen("c1","rb");
fread(&m1,sizeof(int),1,fi1);
i=m1;
}
for(i;i<=SIZE;i++)
{
if(m1>=(SIZE-1))
{
printf("\n---------------------------已存满,不能存入数据--------------------------");