第二次作业hzw
第二次作业
| GIT地址 | 地址链接 |
|---|---|
| GIT用户名 | BRYANT333 |
| 学号后五位 | 24240 |
| 博客地址 | 我的博客 |
| 作业链接 | 第二次作业地址 |
一、环境配置
win7,vs2019,Git
因为上学期学习面向对象程序 设计,所以已经安装了vs2019,Git如下:

二、代码思路
分别需要产生随机的运算数字和随机的运算符,再进行运算,且运算时可以选择题目的数量,数字的取值范围,以及在最后可以查询正确的结果。
代码如下:`using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
//zw简单四则运算
namespace Calculator
{
public class SiZeYuanSuan
{
int num_g, num_f;
double[] Result;
Random rdm = new Random();
//构造函数,传值
public SiZeYuanSuan(int num_g, int num_f)
{
this.num_g = num_g;
this.num_f = num_f;
Result = new double[num_g];
}
//产出随机运算
public void YunSuanSC()
{
for (int i = 0; i < num_g; i++)
{
int a = rdm.Next(num_f) + 1;//生成第一个数
int b = rdm.Next(num_f) + 1;//生成第二个数
char f = YunSuanFu();//取出运算符
//打印题目
Console.WriteLine("{0}、{1} {2} {3} = ", i + 1, a, f, b);
//存储结果
if (f == '+') { Result[i] = a + b; }
else if (f == '-') { Result[i] = a - b; }
else if (f == '') { Result[i] = a * b; }
else { Result[i] = Math.Round(Convert.ToDouble(a) / b, 3); }
}
}
//产出随机运算符
char YunSuanFu()
{
int k = rdm.Next(4);
char fu = '+';
switch (k)
{
case 0: fu = '+'; break;
case 1: fu = '-'; break;
case 2: fu = ''; break;
case 3: fu = '/'; break;
}
// Console.WriteLine(fu);
return fu;
}
//查看答案
public void SeeResult()
{
foreach (double i in Result)
{
Console.WriteLine(i.ToString());
}
}
static void Main(string[] args)
{
Console.WriteLine("请输入题目个数:");
int num_g = int.Parse(Console.ReadLine());//确定题目个数
Console.WriteLine("请输入运算数字范围:");
int num_f = int.Parse(Console.ReadLine());//运算范围
SiZeYuanSuan YS = new SiZeYuanSuan(num_g, num_f);
YS.YunSuanSC();
Console.WriteLine("是否查看答案(YorN):");
char See = char.Parse(Console.ReadLine());
if (See == 'Y' || See == 'y')
{
Console.WriteLine("答案如下");
YS.SeeResult();
}
else
{
Console.WriteLine("感谢使用!");
}
string str = Console.ReadLine();
}
}
}`
运行结果如下图:

在克隆时候忘记截图了,很难受。
单元测试

在进行测试时发现始终无法判断代码正确性,希望老师或者助教能进行讲解。
总结
在这次的作业完成过程中,深深的感到自己的c#语言能力还差的远,编程能力完全不够,很多的东西都需要在网上寻找帮助以及同学的提醒;同时也在单元测试这一块有很大的问题,始终找不到判断代码的方法。
但是也是在慢慢的回忆、摸索的过程中,也学到了很多的知识,有以前的,也有 本次作业中新学的。
第二次作业hzw的更多相关文章
- 耿丹CS16-2班第二次作业汇总
-- Deadline: 2016-09-28 12:00 -- 作业内容:http://www.cnblogs.com/huangjunlian/p/5891726.html -- 第二次作业总结: ...
- JAVA第二次作业展示与学习心得
JAVA第二次作业展示与学习心得 在这一次作业中,我学习了复选框,密码框两种新的组件,并通过一个邮箱登录界面将两种组件运用了起来.具体的使用方法和其他得组件并没有什么大的不同. 另外我通过查阅资料使用 ...
- 20169212《Linux内核原理与分析》第二周作业
<Linux内核原理与分析>第二周作业 这一周学习了MOOCLinux内核分析的第一讲,计算机是如何工作的?由于本科对相关知识的不熟悉,所以感觉有的知识理解起来了有一定的难度,不过多查查资 ...
- 软件工程(QLGY2015)第二次作业点评(随机挑选20组点评)
相关博文目录: 第一次作业点评 第二次作业点评 第三次作业点评 说明:随机挑选20组点评,大家可以看看blog名字,github项目名字,看看那种是更好的,可以学习,每个小组都会反应出一些问题,希望能 ...
- 程序设计第二次作业<1>
面向对象程序设计第二次作业<1> Github 链接:https://github.com/Wasdns/object-oriented 题目: <1>第一次尝试 我立马认识到 ...
- homework-02,第二次作业——寻找矩阵最大子序列和
经过漫漫漫~~~~~~~~~~~~~~长的编译和调试,第二次作业终于告一段落了 先放出源码,思路后面慢慢道来 #include<stdio.h> #include<stdlib.h& ...
- 20169210《Linux内核原理与分析》第二周作业
<Linux内核原理与分析>第二周作业 本周作业分为两部分:第一部分为观看学习视频并完成实验楼实验一:第二部分为看<Linux内核设计与实现>1.2.18章并安装配置内核. 第 ...
- SQL 第二章 作业
/*第二章 作业*/ create table S ( sno char(2) NOT NULL UNIQUE, sname char(3), city char(2) ); alter table ...
- 软件工程(GZSD2015)第二次作业小结
第二次作业,从4月7号开始,陆续开始提交作业.根据同学们提交的作业报告,相比第一次作业,已经有了巨大改变,大家开始有了完整的实践,对那些抽象的名词也开始有了直观的感受,这很好.然后有一些普遍存在的问题 ...
随机推荐
- LightOJ - 1265 Island of Survival (概率dp)
You are in a reality show, and the show is way too real that they threw into an island. Only two kin ...
- [POJ2528]Mayor's posters(离散化+线段树)
Mayor's posters Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 70365 Accepted: 20306 ...
- 国内免费CMS系统大全
一.ASP类的CMS程序 1.动易CMS 官方网址:http://www.powereasy.net/(可免费下载) 特点:完全免费,ACCESS数据库,主要功能模块:文章频道.下载频道.图片频道.留 ...
- 深入谷歌和甲骨文旷日持久的版权战争,趣味科普当前最火的编程语言JAVA的前世今生
这篇文章是我在B站上投稿的一个科普java的视频文案,内容如标题,感兴趣的码农朋友可以移步观看https://www.bilibili.com/video/av81171108/ 在过去短短几十年间, ...
- 经典问题(c++/python)素数、杨辉三角(金字塔型)、统计单词数、简单计算器、密码安全程度、凯撒密码加密、汉诺塔 (python课设实验实例)-- biaobiao88
[编写程序,输人一个大于2的自然数,然后输出小于该数字的所有素数组成的列表.]所谓素数,是指除了1和自身之外没有其他因数的自然数,最小的素数是2,后面依次是3.5.7.11.13... c++代码: ...
- ABP-多个DbContext实现事物更新
1.在ABP中其实多个DbContext并没有在同一个事物中执行,那他是如何操作的,我的理解是 在不使用事物的时候 把多个DbContext存放在ActiveDbContexts 在调用工作单元的时候 ...
- Maven 生命周期的概念(指令默认顺序执行)
生命周期的概念 IDEA中使用maven构建项目都集中放到了窗口右侧"Maven Projects"中,点击该区域可以直观的看到,maven中几个常用指令都归类为LifeCycle ...
- CF1272D. Remove One Element 题解 动态规划
题目链接:http://codeforces.com/contest/1272/problem/D 题目大意: 给你一个长度为 \(n\) 的数组,你最多删除一个元素(也可以不删),求此条件限制下的最 ...
- 洛谷P1220 关路灯 题解 区间DP
题目链接:https://www.luogu.com.cn/problem/P1220 本题涉及算法:区间DP. 我们一开始要做一些初始化操作,令: \(p[i]\) 表示第i个路灯的位置: \(w[ ...
- ipaclient 4.5.4 requires jinja2, which is not installed. rtslib-fb 2.1.63 has requirement pyudev>=0.16.1, but you'll have pyudev 0.15 which is incompatible. ipapython 4.5.4 has requirement dnspython>=