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---------------------------已存满,不能存入数据--------------------------");