第二次博客作业

第二次作业 熟悉工具

格式描述:

GIT地址GIT地址
GIT用户名zjc-123
博客地址 作业链接 作业正文

作业目录:

Part 1.环境的配置跳转
Part 2.克隆项目跳转
跳转 Part 4.github提交代码 跳转 Part 5.代码的单元测试、断点及效能分析 跳转 Part 6.总结感悟 跳转 Part 7.参考文件 跳转

Part 1.环境的配置

  1. 安装GIT
    1784878-20190919183724047-805975037.jpg
    1784878-20190919183958613-589573680.jpg
  2. vs的安装,之前就在使用vs了,就不再详细安装了。曾经在安装时经常安装失败,导致要删除所有的与vs相关的文件,就很烦。
    1784878-20190919184138669-1439560236.jpg

    Part 2.克隆项目


  3. 在成功登录github账号后,在阿超仓库将阿超的四则运算拷贝到自己的同名中仓库中,如下图所示;这里登录的是账号:zjc-123。
    1784878-20190919132709276-250232042.png
  4. 克隆项目到本地文件夹,点击COlne or download,将框中的链接地址复制
    1784878-20190919185212150-1329093194.jpg
    在git命令行中输入命令:git clone https://github.com/zjc-123/Calculator.git完成后在目录下可以看到与目录同名的文件夹
    1784878-20190919192002664-379660649.jpg
    1784878-20190919192010489-1624316744.jpg
  5. 在该目录下创建与git账号名为名的文件夹用于存放项目。
  6. 1784878-20190919192643770-1969229300.jpg


    Part 3.代码过程


    1、作业简介

    阿超家里的孩子上小学一年级了,这个暑假老师给家长们布置了一个作业:家长每天要给孩子出一些合理的,但要有些难度的四则运算题目,并且家长要对孩子的作业打分记录。作为程序员的阿超心想,既然每天都需要出题,那何不做一个可以自动生成小学四则运算题目与解决题目的命令行 “软件”呢。他把老师的话翻译一下,就形成了这个软件的需求:

  • 程序接收一个命令行参数 n,然后随机产生 n 道加减乘除(分别使用符号+-*/来表示)练习题,每个数字在0100 之间,运算符在2个 到3 个之间。
  • 由于阿超的孩子才上一年级,并不知道分数。所以软件所出的练习题在运算过程中不得出现非整数,比如不能出现 3÷5+2=2.6 这样的算式。
  • 练习题生成好后,将生成的n道练习题及其对应的正确答案输出到一个文件 subject.txt中。
    当程序接收的参数为4时,以下为一个输出文件示例。

    13+17-1=29
    11*15-5=160
    3+10+4-16=1
    15÷5+3-2=4


2、代码设计

最开始实现了算式的打印在文件中。

 public static void Calculator(int n)
    {
        Random r = new Random();
        for (int j = 0; j < n; j++)
        {
            int c = r.Next(2, 4);
            int[] num = new int[10];
           string[] x = new string[2*c+1];
            for (int i = 0; i <= 2 * c; i++)
            {
                if (i % 2 == 0)
                    num[i] = r.Next(1, 101);
                else 
                    num[i]=s[r.Next(0,4)];
            }
            for (int i = 0; i <= 2 * c; i++)
            {
                using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\Users\Administrator\Desktop\test.txt", true))
            {
                if (i % 2 == 0)
                {
                    x[i] = num[i].ToString();
                    Console.Write(num[i]);
                    file.Write(num[i]);

                }
                else if (num[i] == 0)
                {
                    x[i] = "+";
                    Console.Write("+");
                    file.Write("+");
                }

                else if (num[i] == 1)
                {
                    x[i] = "-";
                 Console.Write("-");
                    file.Write("-");
                }

                else if (num[i] == 2)
                {
                    x[i] = "*";
                   Console.Write("*");
                    file.Write("*");
                }

                else
                {
                    x[i] = "/";
                   Console.Write("/");
                    file.Write("/");
                }
                if(i==2*c)
                    file.WriteLine("=");
                
            }
               
               
            }
           Console.WriteLine("=");
        }
        
    }

1784878-20190920110914467-428183578.jpg
1784878-20190920110852314-631661829.jpg

3、运行结果


虽然实现了打印题目,但还没有实现算式的运算和满足相应的条件,期间在网上看了很多博客和csdn,借鉴了别人的计算模块的代码,终于解决了这两个问题。下面是最终的结果截图,代码在github账号上。
1784878-20190920113857916-73838508.jpg
1784878-20190920113921980-1821993613.jpg


Part 4.github提交代码

首先在自己建立c#项目的地方右键选择Git Bash here,并输入下图命令git add . git status
1784878-20190920130657836-1961950228.png

在进行检查之后,输入git push

1784878-20190920131219361-2052654779.png
之后会弹出一个登录界面,输入自己的账号和密码,如果是第一次登陆,需要添加密钥,具体的过程见博客第一次使用Git上传本地项目到github上——孙氏楼
1784878-20190920131840315-1381399251.png

这样就代表项目已经上传成功
1784878-20190920132331475-553967760.png


Part 5.代码的单元测试、断点及效能分析



单元测试


在解决方案上单击右键,添加新建项目。。
1784878-20190920170358273-1873562688.png
1784878-20190920170516982-1602571572.png

完成之后,添加要测试的代码,下面是我简单测试的一点代码。

1784878-20190920172044843-1131205402.png
1784878-20190920172100074-364805917.png


断点

当代码不能正常运行时,可以通过调试定位错误。常用的程序调试操作包括设置断点、开始、中断和停止程序的执行、单步执行程序以及使程序运行到指定的位置。右键单击要设置断点的代码行,在弹出的快捷菜单中选择“断点”→“插入断点”命令;插入断点后,就会在设置断点的行旁边的灰色空白处出现一个红色圆点

1784878-20190920173020386-1940044484.png
单击开始调试,可以通过菜单栏上的选项进行单步执行和逐过程执行。
1784878-20190920173554040-858723849.png

回归测试


在上方菜单栏处点击分析->性能和诊断->性能导向,运行程序等待结果。


1784878-20190920174519897-1263212549.png
1784878-20190920174544623-741453828.png
1784878-20190920174606183-1407238182.png

Part 6.总结感悟

这次的作业量很多但却不难,就是需要仔细就可以做好,虽然在配置git输入命令用了很长时间,它们之间的关系也让我花了很多时间;由于我自身太浮躁,我不想去慢慢看老师给的资料,导致后来上传代码时浪费了很多精力。学习就应该静下来,慢慢消化知识点,像我这样太浮躁只会导致后来很多不该出现的问题出现,逐渐消磨了信心,到最后不想去学习。这次的实验让我视野更加开阔,软件不仅仅是代码,还有很多的工具,要自己去实践。

Part 7.参考文件

  1. git push 出现Everything up-to-date 解决方法
  2. 第一次使用Git上传本地项目到github上——孙氏楼

转载于:https://www.cnblogs.com/9527abc/p/11555906.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值