十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
分析:问题库(QAS)用外部的配置文件保存,每次运行前先载入库中已经建立的问题。然后再进入操作选择。完整代码如下:/*1.暂时不考虑汉字;2.可以用链表优化;3.将每一种操作封装成一个函数;*/#include#include#include#include////////////////////////////////////////////////////////////////////////////字符串最大长度#defineMAX_STR_LEN2048//题库上限#defineMAX_QAS_LEN1024//配置文件路径#defineQAS_FILE_PATH"d:\\qasconfig.txt"////////////////////////////////////////////////////////////////////////////问题结点typedefstructtagQASNode{charQuestion[MAX_STR_LEN];charAnswer[MAX_STR_LEN];doubleScore;boolIsAnswered;}QASNode;//问题库QASNode*g_QASLib[MAX_QAS_LEN];intg_QASIndex=0;////////////////////////////////////////////////////////////////////////////添加boolInsertToLib(char*pQuestion,char*pAnswer,doublescore){if(pQuestion==NULL||strcmp(pQuestion,"")==0||pAnswer==NULL)returnfalse;QASNode*pNewNode=(QASNode*)malloc(sizeof(QASNode));memset(pNewNode,0L,sizeof(QASNode));strcpy_s(pNewNode-Question,pQuestion);strcpy_s(pNewNode-Answer,pAnswer);pNewNode-Score=score;g_QASLib[g_QASIndex++]=pNewNode;returntrue;}//随机一个不重复的序号intGetQuestionIndex(){intretVal=-1;inttryCnt=0;while(tryCnt++IsAnswered){retVal=randVal;break;}}returnretVal;}//////////////////////////////////////////////////////////////////////////intmain(){//打开配置文件FILE*pStream=NULL;if(fopen_s(pStream,QAS_FILE_PATH,"a+")!=0){printf_s("Opentheconfigfilefailed.\n");return-1;}//加载已有的QASfseek(pStream,0L,SEEK_END);intfileSize=ftell(pStream);fseek(pStream,0L,SEEK_SET);while(!feof(pStream)fileSize){if(g_QASIndexQuestion);printf_s("Inputanswer:");chartempA[MAX_STR_LEN]={0};fflush(stdin);gets_s(tempA,MAX_STR_LEN);if(strcmp(tempA,g_QASLib[currentIndex]-Answer)==0){printf("Right!\n");totalSocore+=g_QASLib[currentIndex]-Score;g_QASLib[currentIndex]-IsAnswered=true;}else{printf("Wrong!\n");}}else{printf("你已经答对了所有的问题!\n");}}break;case2:{if(currentIndex!=-1){printf("Quest:%s\nScore=%.2f\n",g_QASLib[currentIndex]-Question,g_QASLib[currentIndex]-Score);}else{printf("请先选择\"回答问题\"!\n");}}break;case3:{//一次只添加一个问题if(g_QASIndexQuestion,g_QASLib[i]-Answer,g_QASLib[i]-Score);}}break;default:break;}}printf("\n");return0;}运行起来后先建立问题库!
成都创新互联网站建设公司一直秉承“诚信做人,踏实做事”的原则,不欺瞒客户,是我们最起码的底线! 以服务为基础,以质量求生存,以技术求发展,成交一个客户多一个朋友!专注中小微企业官网定制,网站制作、成都做网站,塑造企业网络形象打造互联网企业效应。
主函数:
一般而言,编写一个能运行在操作系统上的程序,都需要一个主函数。主函数意味着建立一个独立进程,且该进程成为了程序的入口,对其它各函数(在某些OOP语言里称作方法,比如Java)进行调用,当然其它被调用函数也可以再去调用更多函数.......这样整个程序的运行轨迹就像一种栈,有时我们称之为调用栈。主函数既是程序的入口,又是程序的出口,通常我们还可以指定一个exit code再退出,以表明程序最后的结果是什么样的。
C语言
按照C99标准的规定,C语言的main函数如下:
int main(
void){/*百度百科示例代码*/}//整数类型主函数(无类型)
或者
int main(intargc,
char*argv[]){/*百度百科示例代码*/}//整数类型主函数(整数类型统计参数个数,字符类型*
数组指针至字符[])
C++语言
按照C++98标准和C++11标准的规定,C++语言的主函数如下:
int main(){/*百度百科示例代码*/}//整数类型主函数
或者
int main(intargc,
char*argv[]){/*百度百科示例代码*/}//整数类型主函数(整数类型统计参数个数,字符类型*
数组指针至字符[])
c语言的源程序语法结构如下:
#includestdio.h//预处理语句
/* 自定义函数1*/
/* 自定义函数2*/
int main()
{
//main()主函数执行调用以上定义的函数的顺序
return 0;//执行完毕 退出
}
示例如下:
#include stdio.h
int main()
{
printf("welcome to c language!!!\n");
return 0;
}