1、 int ret;fp= fopen(D:1.txt,r+ ); /打开文本文件for(count=1;!feof(fp);count+) fscanf(fp, %dn%sn%sn%sn%sn%cnn, &gamecount.num,&gamecount.title, /把文本中题库传给结构体数组 &gamecount.contain, &gamecount.choice1,&gamecount.choice2,&gamecount.answer );for (i=1;icount;i+) /检验是否存在相同题目 if (gamei.num=gamei+1.num)count=count-1;
2、share=count;fclose(fp); /关闭文本文件start:printf(n 脑筋急转弯系统 Version 5.0 n By Willson 修改日期:2009-06-27nn n 进入 游戏测试 请输入(1)n 进入 系统管理 请输入(2)n 退出 本系统 请输入(0) n); scanf(%d,&function);/测试功能调用 if (function=1) printf( 您选择的是 游戏测试nn 现在进入游戏测试!nn / test(); if (test()=1) goto start; else exit(0);/管理功能调用 else if (function
3、=2) step2: 您选择的是 管理 ,现在进入系统管理菜单!n (1) 新增题目n (2) 修改题目n (3) 删除题目n (4) 浏览题目n (5)返回上一层菜单n (0)退出本系统n scanf(mag);/新增题目调用 if (mag=1) 您选择的是 (1)新增题目,现在进入新增题目功能! if (add()=1)goto start;/修改题目调用 else if (mag=2) printf ( 您选择的是 (2)修改题目,现在进入修改题目功能! if (mod()=1) goto step2; else if (mod()=2) goto start; /删除题目调用 els
4、e if (mag=3) 您选择的是 (3)删除题目,现在进入删除题目功能! if (del()=1)goto step2;/浏览题目调用 else if (mag=4) printf ( 您选择的是 (4)浏览题目,现在进入浏览题目功能!n- if (sca()=1)goto step2;/返回上一层菜单 else if (mag=5)goto start;/退出系统 else if (mag=0)exit(0); else printf ( 系统提示:对不起!您的输入有误,系统将自动退出!n-n exit(0); else if (function=0)printf(n 系统即将退出!ex
5、it(0); elseprintf (/测试功能函数 int test() int i,j,a100,b100,re,r=0,n=0; char check; srand(time(NULL); /以系统时间为seed获取变化的随机数 系统将为您自动选取题目,请稍候!nn- for (i=1;=5;i+) loop:ai=rand()%(count-1)+1; bi=ai; /校验随机数是否重复,重复则返回再次获取 for(j=0;ji;j+) if (bj=ai) goto loop; 题目编号:%dnn 题目标题:%snn 题目内容:%snn 选项:%s %snn,gameai.num,g
6、ameai.title,gameai.contain,gameai.choice1,gameai.choice2); 请输入您的选择:%scheck); if(int)check=(int)gameai.answer) /校验答案 r+;n 回答正确! elsen 回答错误,正确答案是: %cn-n,gameai.answer); if (r=5) /此处实现根据答对题数输出评语功能n酷毙了!n else if(r=2)n哎,你运气木老老差啊!n else n继续努力!n (1)返回上一层菜单nn (2)退出本系统n scanf(re); if (re=1) return re; else p
7、rintf( 输入错误,退出系统!/新增题目函数 int add()int tag; int i; for(;count+) /获得题库中已存在的题目数 gamecount.num=count; /新增题目到结构体数组 你选择的是新增脑筋急转弯系统的题目!n 请输入新增的脑筋急转弯的标题:gamecount.title);n 请输入脑筋急转弯的内容:gamecount.contain);n 请输入脑筋急转弯的选项1:gamecount.choice1);n 请输入脑筋急转弯的选项2:gamecount.choice2);n 请输入脑筋急转弯的答案:gamecount.answer); fp=
8、fopen(a /打开文本 /将新增到结构体数组的内容写入文本 fprintf( fp, n%dn%sn%sn%sn%sn%cn,gamecount.num,gamecount.title, gamecount.contain, gamecount.choice1,gamecount.choice2,gamecount.answer ); fclose(fp); /关闭文本 count=count+1; /总题数+1 /返回成功信息n 新增脑筋急转弯题库成功!n-n 是否需要继续新增? n (1)继续新增n (2)返回上一层菜单n (0)退出系统ntag); if(tag=1) ; else
9、if(tag=2) return 1; else if(tag=0) exit(0);/修改题目函数 int mod()FILE *fp; int modnum,tag=0,i,flag; modstep: 你选择的是修改脑筋急转弯系统的题目!n 请输入想要修改的脑筋急转弯题目的编号:modnum); for (share=1;share=count;share+) if (gameshare.num=modnum) /通过要修改的题目编号,获得对应结构体数组 tag=share; break; if (tag=0) n 错误!不存在这个编号!系统将自动退出! /修改特定编号的结构体数组 el
10、se%d 题目信息如下:n-n标题:%sn题目:%snn选项:%s %sn答案:%cnn-n,gametag.num,gametag.title,gametag.contain,gametag.choice1,gametag.choice2,gametag.answer); 请输入更改后的标题:gametag.title); 请输入更改后的内容:gametag.contain); 请输入更改后的选项1:gametag.choice1); 请输入更改后的选项2:gametag.choice2); 请输入更改后的答案:gametag.answer); 修改成功!/返回成功信息w /更新结构体数组之
11、后更新文本 for(i=1; fprintf(fp,%dn%sn%sn%sn%sn%cn,gamei.num,gamei.title, gamei.contain, gamei.choice1,gamei.choice2,gamei.answer );n 修改脑筋急转弯题库成功!n 是否需要继续修改? (1)继续修改 (2)返回上一层菜单 (3)返回主菜单 (0)退出系统nflag); if(flag=1) goto modstep; else if(flag=2) return 1; else if(flag=3) return 2; else if(flag=0) exit(0);/删除题
12、目函数 int del()FILE *fp; int delnum,tag=0,i,re; printf( 你选择的是删除脑筋急转弯系统的题目!n 请输入想要删除的脑筋急转弯题目的编号:delnum); /获得要删除题目编号 if (gameshare.num=delnum) /获得对应结构体数组 if (tag=0)退出系统! else /输出要删除题目信息n-n 标题:%sn 题目:%s %sn 答案:,gametag.num,gametag.title,gametag.contain,gametag.choice1,gametag.choice2,gametag.answer) ; fo
13、r(i=tag;count-1;i+) /用下一个结构体数组信息依次覆盖来删除特定题目 gamei.num=gamei+1.num; gamei.title=gamei+1.title; gamei.contain=gamei+1.contain; gamei.choice1=gamei+1.choice1; gamei.choice2=gamei+1.choice2; gamei.answer=gamei+1.answer;i+) /更新文本内容 count=count-1; 删除成功!n (1)返回上一层菜单nn (0)退出本系统n if (re=1) return re; else if (re=0) 系统提示: else printf(n 输入错误!/浏览题目函数 int sca()int i,re; char c;=count-1; %dnn 标题:%snn 题目:%s %snn 答案:,gamei.num,gamei.title,gamei.contain,gamei.choice1,gamei.choice2,gamei.answer); system(pause /实现按任意键继续功能cls /清屏实现分屏浏览功能
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2