Practice1小学四则运算
本次实验是做一个自动生成小学四则运算的小程序,对于我来说是检验基础的一次实验,要运用Visual C++来编写完成,“自动生成”第一印象是要用到Random()函数,“加减乘除”则应该用到switch和case语句,小学四则运算应该是一位与一位数相加、一位数与二位数相加和二位数与两位数相加,做个简单的菜单,初步的想法就是这样。
在实验过程中,发现了不少问题,比如这程序只能执行一边,不能返回上一级,应该用函数调用但我没有实现;也有很多容错性没有考虑到。
总结:在这次实验中,我了解到了基础知识的重要性,遇到问题要去想,要去解决,希望下次继续努力!
以下是源程序:
#include<stdio.h>
#include<stdlib.h>
void main()
{
int n,i,a,b,c,d,e,f,g,h;
printf("****************************欢迎使用!************************\n");
printf("\n");
printf("1.加法运算\n");
printf("2.减法运算\n");
printf("3.乘法运算\n");
printf("4.除法运算\n");
printf("0.退出程序\n");
printf("***************************************************************\n");
printf("请选择运算类型:");
scanf("%d", &n);
switch(n)
{
case 1:
{
printf("***************************************************************\n");
printf("5.一位数加一位数\n");
printf("6.一位数加两位数\n");
printf("7.两位数加两位数\n");
printf("***************************************************************\n");
printf("请输入题型:");
scanf("%d",&i);
while(i<5||i>7)
{
printf("输入错误,请重新输入");
scanf("%d",&i);
}
if(i==5)
{
a=rand()%10+1;
b=rand()%10+1;
printf("%d+%d=\n",a,b);
}
if(i==6)
{
a=rand()%10+1;
b=rand()%100+1;
printf("%d+%d=\n",a,b);
}
if(i==7)
{
a=rand()%100+1;
b=rand()%100+1;
printf("%d+%d=\n",a,b);
}
break;
}
case 2:
{
printf("***************************************************************\n");
printf("5.一位数减一位数\n");
printf("6.两位数减一位数\n");
printf("7.两位数减两位数\n");
printf("***************************************************************\n");
printf("请输入题型:");
scanf("%d",&i);
while(i<5||i>7)
{
printf("输入错误,请重新输入");
scanf("%d",&i);
}
if(i==5)
{
c=rand()%10+1;
d=rand()%10+1;
printf("%d-%d=\n",c,d);
}
if(i==6)
{
c=rand()%100+1;
d=rand()%10+1;
printf("%d-%d=\n",c,d);
}
if(i==7)
{
c=rand()%100+1;
d=rand()%100+1;
printf("%d-%d=\n",c,d);
}
break;
}
case 3:
{
printf("***************************************************************\n");
printf("5.一位数乘一位数\n");
printf("6.一位数乘两位数\n");
printf("7.两位数乘两位数\n");
printf("***************************************************************\n");
printf("请输入题型:");
scanf("%d",&i);
while(i<5||i>7)
{
printf("输入错误,请重新输入");
scanf("%d",&i);
}
if(i==5)
{
e=rand()%10+1;
f=rand()%10+1;
printf("%d*%d=\n",e,f);
}
if(i==6)
{
e=rand()%10+1;
f=rand()%100+1;
printf("%d*%d=\n",e,f);
}
if(i==7)
{
e=rand()%100+1;
f=rand()%100+1;
printf("%d*%d=\n",e,f);
}
break;
}
case 4:
{
printf("***************************************************************\n");
printf("5.一位数除于一位数\n");
printf("6.两位数除于一位数\n");
printf("7.两位数除于两位数\n");
printf("***************************************************************\n");
printf("请输入题型:");
scanf("%d",&i);
while(i<5||i>7)
{
printf("输入错误,请重新输入");
scanf("%d",&i);
}
if(i==5)
{
g=rand()%10+1;
h=rand()%10+1;
printf("%d/%d=\n",g,h);
}
if(i==6)
{
g=rand()%100+1;
h=rand()%10+1;
printf("%d/%d=\n",g,h);
}
if(i==7)
{
g=rand()%100+1;
h=rand()%100+1;
printf("%d/%d=\n",g,h);
}
break;
}
case 0:
{
printf("谢谢使用!再见!\n");
break;
}
}
}
Practice1小学四则运算的更多相关文章
- Practice1小学四则运算(改进)
#include<stdio.h> #include<stdlib.h> #include<time.h> void srand(unsigned);//随机生成不 ...
- 作业二:个人编程项目——编写一个能自动生成小学四则运算题目的程序
1. 编写一个能自动生成小学四则运算题目的程序.(10分) 基本要求: 除了整数以外,还能支持真分数的四则运算. 对实现的功能进行描述,并且对实现结果要求截图. 本题发一篇随笔,内容包括: 题 ...
- myapp——自动生成小学四则运算题目的命令行程序(侯国鑫 谢嘉帆)
1.Github项目地址 https://github.com/baiyexing/myapp.git 2.功能要求 题目:实现一个自动生成小学四则运算题目的命令行程序 功能(已全部实现) 使用 -n ...
- java实现自动生成小学四则运算——朱庭震,詹祺豪
组员:朱庭震,詹祺豪 Github地址:https://github.com/ztz1998/second/tree/master 1题目:实现一个自动生成小学四则运算题目的命令行程序. 2说明: 自 ...
- Individual Project "写一个能自动生成小学四则运算题目的程序"
一.题目简介 写一个能自动生成小学四则运算题目的程序. 初步拟定要实现的功能后,估计一下自己需要花多长时间.编程过程中记录自己实际用了多长时间. 然后和同学们比较一下各自程序的功能.实现方法的异同等等 ...
- 小学四则运算APP 最后阶段
团队成员:陈淑筠.杨家安.陈曦 团队选题:小学四则运算APP 这次发布的是我们APP的最终版本!图片背景有根据用户需求改变!还增加了草稿纸运算的画布功能! 运行结果如下: package com.ex ...
- 小学四则运算APP 第三阶段冲刺-第一天
团队成员:陈淑筠.杨家安.陈曦 团队选题:小学四则运算APP 第三次冲刺阶段时间:12.12~12.19 本次发布的是音乐播放功能,可以根据用户需求一边播放音乐一边做题,也拥有暂停播放音乐的功能,增强 ...
- 小学四则运算APP 第二阶段冲刺-第五天
团队成员:陈淑筠.杨家安.陈曦 团队选题:小学四则运算APP 第二次冲刺阶段时间:11.29~12.09 本次发布的是判断题代码,已经实现部分功能,,但是美中不足的是判断错误 panduanset.j ...
- 小学四则运算APP 第二次冲刺 第四天
团队成员:陈淑筠.杨家安.陈曦 团队选题:小学四则运算APP 第二次冲刺阶段时间:11.29~12.09 本次发布的是合并后的选择题功能界面的设置: ChoiceSet.java: package c ...
随机推荐
- python第三十一课--递归(2.遍历某个路径下面的所有内容)
需求:遍历某个路径下面的所有内容(文件和目录,多层级的) import os #自定义函数(递归函数):遍历目录层级(多级) def printDirs(path): dirs=os.listdir( ...
- Scala学习之路 (二)使用IDEA开发Scala
目前Scala的开发工具主要有两种:Eclipse和IDEA,这两个开发工具都有相应的Scala插件,如果使用Eclipse,直接到Scala官网下载即可http://scala-ide.org/do ...
- 写出js内存泄漏的问题?
回答一: (1)IE7/8 DOM对象或者Active对象循环引用导致内存泄漏 a.多个对象循环引用 b.循环的DOM泄漏 (2)基础的DOM泄漏 当原有的DOM被移除时,子节点引用没有被移除则无法回 ...
- Docker技术入门与实战 第二版-学习笔记-7-数据管理(volume)
Docker 数据管理 为什么要进行数据管理呢?因为当我们在使用container时,可能会在里面创建一些数据或文件,但是当我们停掉或删除这个容器时,这些数据或文件也会同样被删除,这是我们并不想看见的 ...
- RMAN删除备份
删除备份--DELETE命令 用于删除RMAN备份记录及相应的物理文件.当使用RMAN执行备份操作时,会在RMAN资料库(RMAN Repository)中生成RMAN备份记录,默认情况下RMAN备份 ...
- 安装ubuntu系统 ——分区
安装ubuntu 系统主要分四个区 目录 建议大小 格式 描述 / 10G-20G ext4 根目录 swap <2048M swap 交换空间 /boot 400M左右 ext4 Linux的 ...
- nginx反向代理 强制https请求 + 非root用户起80,443端口
1. #强制使用https跳转 return 301 https://$server_name$request_uri;rewrite ^(.*)$ https://${server_name}$1 ...
- 20155202张旭 Exp5 MSF基础应用
20155202张旭 Exp5 MSF基础应用 实践内容 本次实验我使用的攻击方式: 1.针对office软件的主动攻击:--MS10-087: 2.MS10-002漏洞对浏览器攻击 3.针对客户端的 ...
- 20155223 Exp8 WEB基础实践
20155223 Exp8 WEB基础实践 基础问题回答 什么是表单? 表单是一个包含表单元素的区域. 表单元素是允许用户在表单中(比如:文本域.下拉列表.单选框.复选框等等)输入信息的元素. 表单使 ...
- 20155234 exp4 恶意代码分析
实验4 恶意代码分析 系统运行监控 Schtasks 先建立一个netstat20155234.txt文件,在文件中输入 date /t >> c:\netstat20155234.txt ...