第二次我的做业:熟悉使用环境

GIT地址 https://github.com/cl12312
GIT用户名 cl12312
学号后五位 24130
博客地址 https://www.cnblogs.com/chen100/
做业连接 http://www.javashuo.com/article/p-weggbcgg-bz.html

1.环境配置问题

a.VS环境的配置

在大一学C语言的时候已经安装过vs2015,此次从新安装vs的时候在网上下载安装包的时候居然下成Blend Visual studio,后面从新下载了Visual studio2015的安装包。在缓慢的安装进程后,我写了一个“hello world!”测试环境,结果显示执行错误,后面再网上搜索解决办法,原来是安装过程当中用过金山毒霸清理垃圾致使重要文件丢失没法运行C#的程序。第三次在卸载金山毒霸后从新安装,终于能正常运行C#的程序啦。
  javascript

b.Git和GitHub的注册

github的注册比较顺利没有碰见问题,下载GitHub也比较顺利。
在这里插入图片描述html

2.克隆项目

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.设计思路

a.新建项目

在这里插入图片描述

b.代码思路

(1)首先把加减乘除放进数组中java

char[] o = { '+', '-', '*', '/' };

(2)而后经过随机生成数字和运算符号将运算式放进提早设置好的result字符中,同时注意除号的时候除数不能为零。git

int i = 0;
while (i < n)
{
               int h = rd.Next(2, 4);//随机生成的数字为了进行三个或者四个数字的随机运算
               int a = rd.Next(0, 100);
               string result = null;
               result = result + a;
               for (int j = 0; j < h; j++)
               {
                   int m = rd.Next(0, 4);
                   int b = rd.Next(0, 100);
                   if (o[m] == '/')
                   {
                       if (b != 0)
                       result = result + o[m] + b;
                       else
                           break;
                   }
                   else
                   result = result + o[m] + b;
}

(3)运算式的运算函数github

public double Com(string result)//计算运算式的结果
        {

            DataTable da = new DataTable();
            double end = double.Parse(da.Compute(result, "").ToString());
            return end;
        }

(4)最后结果的判断,不能为分数和负数面试

if (Com(result) % 1 == 0 && Com(result) >= 0)//结果除以1有余数就说明是小数,为了避免为负数必须保证结果大于等于0
 {
                 i++;
                Console.WriteLine(result + "=" + Com(result));
                CreatFile cf = new CreatFile(result );
}

保存进文本文件:数组

// 这是一个保存在D盘的subject文件所建立的类
StreamWriter sw = new StreamWriter("D:/subject.txt", true);
sw.WriteLine(st);
sw.Close();

输入出题的数量:bash

// 这是主函数
Console.WriteLine("请输入出题个数:");
int n = Convert.ToInt32(Console.ReadLine());//输入要出题的个数并赋值给n
PrintCalcuate calcuate1 = new PrintCalcuate(n);
Console.ReadKey();

运算结果:
在这里插入图片描述记事本打开的结果:
在这里插入图片描述编译成功的结果跟记事本结果一直,以前准备存C盘可是权限不够就只能放进D盘,存入文本文件以及运算式的运算一直出问题后面通过网上搜索才慢慢理解后写出来。服务器

4.测试项目

a.单元测试

单元测试比较坎坷,发现右键点击打不开单元测试,后来右键点击解决方案。
在添加新项目中点测试新建单元测试。
双击后出现下面界面:
在这里插入图片描述在测试项目上,有键引用原项目:在这里插入图片描述
在出现的界面中添加要测试的方法:在这里插入图片描述点上面控件测试-所有测试:函数

在这里插入图片描述

测试完毕后出现下面界面

在这里插入图片描述

b.回归测试

回归测试就是在修改原有代码后,从新对代码进行测试防止没有新的错误或者其余代码的产生出现的错误。
测试前代码:

// 这是一个保存在D盘的subject文件所建立的类
namespace ConsoleApp2
{
    class CreatFile
    {
        public CreatFile(string st)
        {
         string st = "20+2-6=16";
            StreamWriter sw = new StreamWriter("D:/subject.txt", true);
            sw.WriteLine(st);
            sw.Close();

        }
    }
}

修改后代码:

// 这是一个保存在D盘的subject文件所建立的类
namespace cee 
{
    [TestClass]
    public class CreatFile
    {
        [TestMethod]
        public void CreatFile()
        {
            string st = "45+20-12=53";
            StreamWriter sw = new StreamWriter("D:/subject.txt", true);
            sw.WriteLine(st);
            sw.Close();

        }
    }
}

其后的方法与单元测试一直

C.设置断点

在这里插入图片描述断点能够很快的看出程序的出错点在哪里,也能清楚的了解程序的运算思路。

c.效能测试

(1)cpu测试

在这里插入图片描述

(2)Gpu使用状况

在这里插入图片描述

(3)内存使用状况

在这里插入图片描述

(4)性能分析

在这里插入图片描述

(5)对象分配分配跟踪在这里插入图片描述

5.提交代码

代码提交一直没有成功,按照实验指导老是出错,后面试了网上的方法,按照这个网站https://blog.csdn.net/cai2016/article/details/51557682一步一步的来。然而错误仍是出现,由于第一次使用git提交代码,因此复制地址原本须要http可是有些博客上说SSH因此一直出错,还有代码没有规范运行不了。按照我用的方法:首先建立一个文件夹(点进文件夹空白出在git bash 上输入git init),将代码复制带这个文件夹继续输入git add .(后面这个点是包括这个文件夹全部更改文件),查询状态发现文件名有绿色变成蓝色说明文件已经添加到临时仓库,在输入git commit -m“信息”
后输入查询状态再建立连接(记得输入htpps地址),而后pull文件到本地在push仓库临时文件到Achao服务器。
总的来讲,最后一步上次代码比我预期还要困难,主要是不熟悉操做错误,花了不少时间在搜集信息上面,但仍是值得。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

6.心得体会

此次做业花费了两天的时间,开始按照实验指导仍是很轻松到代码阶段本身一直想各类方法可是很难实现(C#的基础不行)。后面按照本身想的方法就去搜索各类博客看其余大佬的代码,看代码也是比较浪费时间的事情,花费很多时间看懂几份代码后本身慢慢写出代码不过运行经过结果却不对或者没有答案或者各类bug而后调试断点一步步改进最后写出一份。第一个份是用switch写的以为代码重复并且范围有限,而后又用随机生成运算符、运算符个数和运算数字进行运算(这个是最开始想法但开始难以实现)。第二份比第一份代码写的快多了,不过还有很多问题出现,好比怎样运算代数、怎样存入文本文件不被覆盖......... 此次收获真的很大,对C#的不少语句又熟练不少除此以外也对C#其余以前没有学过的知识有了必定的掌握。Github也有了必定的认识,掌握了用git提交本地的代码,可是以为本身耗费的时间太多了下次仍是须要多学习再动手。

相关文章
相关标签/搜索