用C语言编程自动生成四则运算
#include<stdio.h>
#include<stdlib.h>
#include <time.h>
#define N 30
main()
{
int a,b,k,i,n;
float c,d;
srand(time(NULL));
do{
printf("\n请输入数字类型(1.整数 2.小数) -1为退出程序: ");
scanf("%d",&n);
switch(n)
{
case 1:
{
for(i=0;i<N;i++)
{
a=rand()%100+1;
b=rand()%100+1;
k=rand()%4+1;
printf("%d",a);
switch(k)
{
case 1:printf("+");break;
case 2:printf("-");break;
case 3:printf("*");break;
case 4:printf("/");break;
}
printf("%d=\t\t",b);
}
break;
}
break;
case 2:
{
for(i=0;i<N;i++)
{
c=rand()*0.001+1;
d=rand()*0.001+1;
k=rand()%4+1;
printf("%0.2f",c);
switch(k)
{
case 1:printf("+");break;
case 2:printf("-");break;
case 3:printf("*");break;
case 4:printf("/");break;
}
printf("%0.2f=\t",d);
}
break;
}
break;
}
}while(n!=-1);
}
感想:这个实验虽然是一个简单的实验,但是过程却是有许多的收获的。首先就是令我非常印象深刻的是,在那天的上机课上,当我差不多写完程序的时候,学校的机房断电了,我们上机的电脑由于还原的功能,我所做的程序瞬间化为无影。这个小小的插曲让我觉得,当我们写到重要的东西的时候,必须记得保存,现在的代码还算少,当几千行代码化为无影的时候,就真的会让人抓狂了,我也感觉到我们每时每刻都在和上天玩着心跳的游戏,因为你不知道下一个瞬间会发生什么事情。然后就是写完的调试过程了,我和我的舍友都有讨论过,每个人都有不同的想法,区别只是在于思维的缜密性,越完善,用户的体验感觉就会越高,那么这个程序就会是一个优秀的程序。一开始调试的时候,舍友无意中的发现,每次出现的数据都是重复性的相同,那么就不能做到有不同的题目库,显然这个bug需要我们去解决。然后我通过上网的查询,学习,学到了一个新的头文件#include <time.h>,这是我们以前没有用过的头文件,搭配着这个srand(time(NULL));语句就会出现不同的题目库了。在这个检查的过程中,我学到了一个新的知识点,我知道,我们不可能了解每一个知识点,总有我们还没涉及到的东西,而通过实验通过调试,我们能够发现一些问题,并通过这些问题在网上找到相应的知识点和解决方案,这就是一个很好的学习过程。
用C语言编程自动生成四则运算的更多相关文章
- C语言编程—自动生成四则运算升级版
#include<stdio.h> #include<time.h> struct fenshu { int fenzi; int fenmu; }Fenshu[]; int ...
- 遗传编程(GA,genetic programming)算法初探,以及用遗传编程自动生成符合题解的正则表达式的实践
1. 遗传编程简介 0x1:什么是遗传编程算法,和传统机器学习算法有什么区别 传统上,我们接触的机器学习算法,都是被设计为解决某一个某一类问题的确定性算法.对于这些机器学习算法来说,唯一的灵活性体现在 ...
- 20194651—自动生成四则运算题第一版报告chris
1.需求分析: (1)自动生成四则运算算式(+ - * /),或两则运算(+ -). (2)剔除重复算式. (3)题目数量可定制. (4)相关参数可控制. (5)生成的运算题存储到外部文件中. 2 ...
- 自动生成四则运算题目(C语言)
Github项目地址:https://github.com/huihuigo/expgenerator 合作者:马文辉(3118005015).卢力衔(3118005013) 项目简介 1题目:实现一 ...
- 结对项目 实现自动生成四则运算题目的程序 (C++)
本次作业由 陈余 与 郭奕材 结对完成 零.github地址: https://github.com/King-Authur/-Automatically-generate-four-arithmet ...
- C语言#自动生成四则运算的编程
#include <iostream> #include <stdio.h> #include <stdlib.h> #include <time.h> ...
- java实现自动生成四则运算
Github项目链接:https://github.com/shoulder01/Fouroperation.git 一.项目相关要求 1. 使用 -n 参数控制生成题目的个数(实现) 2.使用 -r ...
- Java语言中自动生成随机数
参考原文:http://zhidao.baidu.com/link?url=nB3BT69wmUAiSPfKGgK5Q7HOFFP9AIE04AthreRd9yYcwKhUQsQRWlMdMhW1Qm ...
- 作业二:个人编程项目——编写一个能自动生成小学四则运算题目的程序
1. 编写一个能自动生成小学四则运算题目的程序.(10分) 基本要求: 除了整数以外,还能支持真分数的四则运算. 对实现的功能进行描述,并且对实现结果要求截图. 本题发一篇随笔,内容包括: 题 ...
随机推荐
- 没有插件的sublime编辑器是没有灵魂的
这阵子各种捣鼓,现在趁有空记录一下sublime编辑器的一些实用的插件和安装方法,下午又该继续学习了. 接下来安装的是htmlHint.jsHint.cssLint以及汉化这几种插件,其实插件会使我们 ...
- Oracle_spatial的函数介绍
Oracle_spatial的函数 一sdo_Geom包的函数: 用于表示两个几何对象的关系(结果为True/False)的函数:RELATE,WITHIN_DISTANCE 验证的函数:VALIDA ...
- P4279 [SHOI2008]小约翰的游戏
嘟嘟嘟 一道博弈论经典题,nim游戏. 只不过要考虑有奇数个石子为1的堆的时候,为Brother赢.剩下就是nim游戏了. 极简代码 #include<cstdio> using name ...
- 多线程之CAS
在JDK 5之前Java语言是靠synchronized关键字保证同步的,这会导致有锁 锁机制存在以下问题: (1)在多线程竞争下,加锁.释放锁会导致比较多的上下文切换和调度延时,引起性能问题. (2 ...
- 安装的 Linux 软件包有多少?
导读 你有没有想过你的 Linux 系统上安装了几千个软件包? 是的,我说的是“千”. 即使是相当一般的 Linux 系统也可能安装了上千个软件包. 有很多方法可以获得这些包到底是什么包的详细信息. ...
- PAT B1003 我要通过!
“答案正确”是自动判题系统给出的最令人欢喜的回复.本题属于PAT的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”. 得到“答案正确”的条件是: 1 ...
- C#中的委托(二)
一.Action<T>和Func<T>委托 除了上篇描述的为每个参数和返回类型定义一个新委托类型之外,还可以使用Action<T>和Func<T>委托. ...
- Android 连续按两次back键退出系统
需求:在程序的首页,连续按两次back键退出Androd程序. 第一步:新建一个GApplication类继承Application,在GApplication中添加一个用于存放Activity的集合 ...
- 学习笔记---gson
1.gson变量定义注解 @SerializedName("char") private String charm;//mongo转化char 2.gson中json文件转化成类 ...
- vxlan 简单理解 vs calico 网络模型
1.vxlan(virtual Extensible LAN)虚拟可扩展局域网,是一种overlay的网络技术,使用MAC in UDP的方法进 行封装,共50字节的封装报文头. 2.VTEP为虚拟机 ...