随机抽题程序设计
单位名:怀化学院计算机科学与工程学院
课程名称:高级语言程序设计
团队名称:1902班第2组 祖安钢琴师
课程设计题目:随机答题程序
一、课程设计题目基本要求介绍
这是一个简单的限时做题软件,它的功能就是在规定的时间内从题库中随机不重复地抽取一道题目给用户作答,并且对用户答题的时间进行统计,当到达规定时间或用户答完规定题数后,系统停止输出题目,并对用户答题情况进行统计输出。所要用到的知识点有字符数组、随机函数、for循环、自定义函数、宏定义、字体颜色改变等。
二、流程图
三.项目目前的进展
1.可以支持用户大小写输入,输入字符前输入空格、回车,输入字符后输入空格
*实现该功能的思想
首先定义一个数组,一个一个地判断输入的内容,如果是空格或者回车,则跳过,如果是字符,则算入数组中,一旦有了字符,就不再判断回车跳过,而是回车直接结束循环。
*核心代码
#include<stdio.h>
int main()
{
char s[100];
char c;
int i;
scanf("%c",&c);
for(;c==' '||c=='\n' ; )
scanf("%c",&c);
for(i=0; ; )
{
if(c!=' ')
{
s[i]=c;
i++;
}
scanf("%c",&c);
if(c=='\n')
break;
}
s[i]='\0';
puts(s);
}
*效果图
2.在题库中随机抽题不重复,并且不重复部分经过改进完善,减少了程序运行步骤,加快了程序运行的速度
*实现该功能的思想
运用数组元素标记法,把随机出现过的数组元素作标记,下次抽到作过标记的数组元素直接跳过,重新再随机抽取一道题目
*核心代码
#include<stdio.h>
#include<stdlib.h>
#include<time.h>