第一组:填空题数据:20题
1.随机出题
c语言中用来产生一个随机数的函数 rand函数,产生一个1到20之间到随机数,用法如下:
int j=rand()%20+1
2.题目不重复且题目顺序不一致
运行发现确实能随机出数,但重复的数字在答题系统没有意义,实现不重复取数可以使用srand函数,用法如下:
srand((unsigned int)time (NULL));
3.及时反馈正确答案和分数情况
int i;
for(i=1;i<=20;i++){
if(k==answer[j]){
printf("答案正确\n");
grade +=5;
}
else{
printf("答案错误\n");
printf("正确答案是%d\n",answer[j]);
}
printf("你的得分是%d\n",grade);
}
4. 有关输入问题
当输入空格和直接输入回车时,要防止作为答案进入下一题,可以使用getchar 与putchar函数
a=getchar();
putchar(a);
自己代码存在的问题
只能输入整数型数据,输入浮点型会程序崩溃(大概是因为数据类型没有学明白
不能出复杂的题目,只能使用加减乘除
#include<stdio.h>
int main( )
{
printf("答题开始\n");
printf("输入答案后按下回车进入下一题\n");
char a[20][10000]={"1+1","3+5","4+6","7+8","9+13","4*3","9%2","8/2","3^3","5+2","1+1+2+3","8+2*3","5+3+2","6^3","16/2","4+1","2+1","2+1","3*1","4*8"};
int answer[20]={2,8,10,15,22,12,1,4,27,7,7,14,10,216,8,5,3,3,3,32};
希望后续能询问他人完善此次大一大作业答题系统