【无标题】C语言编写一个简单答题系统
这是蒟蒻写的第一个博客,将就看看吧!
首先,我写的是一个填空题答题系统,填空题数目为20。
其次,需要随机出题,题目出现顺序要不一致。
(1) 产生随机数 1~20
(2) 解决运气不好的问题1-18 极少出现19 20
然后,及时反馈正确情况,记录同学的准确率
最后,自定义特性
(1) 大小写答案不区分
(2) 答错之后,要告诉我正确答案是什么
(3) 自己再增加一些人性化的功能
(比如:一开始什么都不输入,就只输出回车或者空格,就判断为错误不太好
思考:_5 5 5_是否算同一个答案? _A A A_是否算同一个答案?)
我拿到这个题的时候也很懵,所以我们先理理思路吧!!!
1.随机数怎么处理???
在C语言中比较常用的是rand函数,它可以随机处理产生0~rand_max的随机数。
rand函数包含在头文件stdlib.h中,记得在开头加上#include<stdlib.h>。
#include<stdio.h>
#include<stdlib.h>
int main(){int a = rand();printf("%d",a);return 0;
}
所以在这个题目中我们也可以用rand函数
#include<stdio.h>
#include<stdlib.h>
int main(){int a[20]={0};//本菜鸟喜欢开始就赋初值为0,毕竟怕忘记for(int i = 1;i <= 20;i ++){a[i]=1+rand()%20;//因为rand是从0开始的,是从0~19,但是题号是从1开始,所以+1for(int m = 1;m<i;m++){if(a[m]==a[i]){i--;//假如有重复的就退回去重新随机出数字}}}
}
2.那我们怎么把数字和题目对应嘞
这就很容易了,用if函数就行
3.大小写不区分怎么弄嘞?
这个有2种方法。我们可以用strlen知道str字符串的长度。记得加上头文件string.h
int len = strlen(str);
法一:
我们可以直接用 函数tolower(将ch字符转换为小写字母),记得加上头文件ctype.h
也可以用 函数toupper(将ch字符转换为大写字母),也要加上头文件ctype.h
法二:
for(int i = 0;i < len;i ++){if(a[i]>='A'&&a[i]<='Z'){a[i]=a[i]+32;}
}
假如是大写字母,就把它的ASC码加上32,成为小写字母。
4.只输入回车或空格,不能判断错误
char c;
int flag = 0;
while(1){scanf("%c",&c);if(c=='\n'&&flag==1){break;}if(c18!=' '&&c18!='\n'){str[i]=c;i++;flag=1;}}
flag是来判断是否输入字符,假如输入了字符,flag=1,假如没有输入,flag=0;
5.怎么计算准确率
可以定义一个全局变量double sum=0,假如正确sum++,当然也要定义一个全局变量double count=0,记录随机出了多少题。用sum/count就得出准确率。
6.其他
(1)颜色
比如
#include<stdio.h>
#include<stdlib.h>
int main(){system("color f5);printf("hello");return 0;
}
运行这个代码你会发现,背景色是白色,文字颜色变成紫色。
那么设计背景色和文字颜色的方法是,在color后面加上两个数字,第一个代表背景色,第二个代表文字颜色。
(2).时间
我们可以用暂停命令Sleep来控制时间,比如Sleep(1000)就是暂停1秒。
假如你觉得有以前数字不好看,可以用清屏幕命令system("cls");
(3).假如你觉得在每一个题目都要加上同样的东西,你可以使用函数
这个系统就写到这了,希望大家可以喜欢
【无标题】C语言编写一个简单答题系统相关推荐
- c语言编写一个简单的答题系统
利用c语言编写一个简单的答题系统. 思路是先设计好题目和答案,再输入自己的答案,利用输入的答案与正确答案对比,从而得出你回答的对错. (一)捆绑题目和答案 我们可以利用结构体对一个题目捆绑上一个答案. ...
- C语言编写一个简单的扫雷
C语言编写一个简单的扫雷 # include <stdio.h> # include <stdlib.h> # include <math.h> # include ...
- python语言的记事本在哪_用python语言编写一个简单记事本
看了一点python的基础教程,忍不住手就痒了,找来一个题目练一下喽. 题目:编写一个功能简单的记事本. 编写记事本就要用到GUI的功能,最常用的当然是wxpython,那么我们就用这个来写一个记事本 ...
- 用 C 语言编写一个简单的垃圾回收器
人们似乎认为编写垃圾回收机制是很难的,是一种只有少数智者和Hans Boehm(et al)才能理解的高深魔法.我认为编写垃圾回收最难的地方就是内存分配,这和阅读K&R所写的malloc样例难 ...
- 一个简单答题系统的设计与实现(一)
开发背景 在2018年底,博主朋友找到博主想让我帮他开发一个软件,因为他要考他所在单位的某项认证考试,看书低效,不如结合使用用软件答题刷题有效果.就此我准备给他开发一个简单的答题系统,他给出如下需求. ...
- 一个简单答题系统的设计与实现(二)
在一个简单答题系统的设计与实现(一)博文中列出了需求分析,与详细设计,现在按照之前的详细设计开始一步一步实现. 文件设计(数据层设计) 该系统由于需求场景限制,在数据层利用文件和文件的读写实现查询.具 ...
- 自动点名系统c语言,用C语言编写一个随机点名系统
/*编写一个随机点名系统,运行该系统后,按空格键可以显示出一名同学,以前被选中的同学,将不会再次被选中*/ #include /*standard input & output*/ #incl ...
- 用C语言编写一个“简单”的程序答题系统
上个星期我们老师给我们布置一道他认为很简单的题,其实就想考考我们,要我们写一个简单的答题系统.开始一看只有一道题我直呼:"仰天大笑出门去,我辈岂是蓬蒿人" 以为老师放我一马,结果点 ...
- C语言编写一个简单的选择题答题系统
上个星期,我们老师给我们布置了一道非常变态的作业题.开始一看只有一道题,欣喜若狂, 以为老师终于大发慈悲了一回,结果点开一看,长这样... 顿时就傻了眼,对于一个刚接触C语言一两个月的小白来说,不能说 ...
最新文章
- Mysql Router 读写分离配置
- java 反射 修改字段_Java反射机制-修改字段值
- linux 查询替换文件内容吗,Linux 下查询文件的方法 替换文件内容
- leetcode 39. Combination Sum | 39. 组合总和(Java)
- 洛谷P7515:矩阵游戏(差分约束)
- 自定义select样式
- 今天觉得自己好像比较紧张
- go语言和java比_python与java、php、go的优势对比,各语言不要引起恐慌哈
- fetchtype 动态控制_hibernate 关于 注解配置@Basic(fetch=FetchType.LAZY) 不起效果
- 蓝桥杯 BASIC-11 基础练习 十六进制转十进制
- numpy与tensorflow中的广播(broadcast)机制
- 1.hexo+next友情链接页面搭建
- Web前端CSS颜色代码大全
- html5播放器 php,PHP/HTML5页面上的随机声音播放器
- Python-个人笔记-Tensorflow-PINN-Plotting
- 澳洲学计算机难毕业吗,澳洲新南威尔士大学计算机专业好吗
- 13种内存卡复活方法
- ps—选择连续的多个图层、同时操作多个图层、选择所有图层与取消选择图层、锁定图层、锁定透明像素、锁定图像像素、锁定位置、锁定全部
- 【技巧】去哪找高清免费素材?这些资源网站必须收藏!
- 教您用几何画板画相切的圆