第二次作业

结对成员:

软件工程(2)班 1759212 袁佳敏 1759210 钱雪儿

.实验要求

•        小学老师要每周给同学出300道四则运算练习题。

•        这个程序有很多种实现方式:

•        C/C++

•        C#/VB.net/Java

•        Excel

•        Unix Shell

•        Emacs/Powershell/Vbscript

•        Perl

•        Python

•        两个运算符,100 以内的数字,不需要写答案。【估计时间1】

•        现在估计写这个程序需要的时间

•        马上把代码写出来

•        需要写答案,并且保证答案在 0..100 之间 【估计时间2】

•        有条件的请马上把程序和运算结果的截屏发到博客上

.实验过程

我们组在接到任务之后,先做了分工以及时间上的安排,基于软工专业的课程比较多,我们主要是在双休日一起写作业,双休日基本完成后,又选在星期二的时间复查。估计时间1:1个小时,估计时间2:半个小时。主要分工如下:袁佳敏主要负责代码的编写,钱雪儿主要负责代码的检查修改。

三.实验中遇到的问题

1.一开始写的代码并没有随机出300道计算题,然后我们在网上查找了c语言中相关的算法,用rand()%100产生0~100随机数,定义三个int型整数,两个表示加或者减的对象,另一个表示加或者减用rand()%2,用0,1表示加或者减,最后解决了这个问题。

2.第二个代码需要写答案,但是我们并不能控制答案在0~100之间,在一定商讨后并没有解决这个问题。

四.代码及运行结果

无运算结果

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

 

int main()

{

int a,b,i,c;

for(i = 0;i < 300;i++)

{

a = rand()%100;

b = rand()%100;

c = rand()%2;

if(c == 0)//加法

{

printf("%d + %d =\n",a,b);

}

else//减法

{

printf("%d - %d =\n",a,b);

}

if(i%5 == 0)

printf("\n");

}

}

(部分运行结果)

 

 

 

有运算结果

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

 

int main()

{

int a,b,i,c;

for(i = 0;i < 300;i++)

{

a = rand()%100;

b = rand()%100;

c = rand()%2;

if(c == 0)//加法

{

printf("%d + %d = %d    ",a,b,a+b);

}

else//减法

{

printf("%d - %d = %d    ",a,b,a-b);

}

if(i%5 == 0)

printf("\n");

}

}

(部分运行结果)

五.实验心得

在这次实验中,我们遇到了关于c语言的问题也遇到了双方协作上的问题,体会到学习c语言是无止境的,我们不能仅仅是学习课本上的知识,还要不断练习,可以合理利用网络来帮助我们查找一些相关资料,并且在编写的时候,也发现知识是容易遗忘的,相信每一次的练习都会使我们的记忆更加深刻,所以要珍惜我们现在练习的机会。同时因为这是一个双方协作的作业,和一个人独立完成还是有一定的差别的,就比如说有的时候一些小错误是自己无法发现的,然后会导致无法运行,还得再找错误,严重影响敲代码的心情,而结对编程可以及时发现错误,两个人又不会像很多人一样乱,感觉这个方式在这门课学到了。当然,结对编程要考虑对方的时间以及思维等还是有点小困难的,不过未来有很多合作的机会,相信现在暴露一些小问题是可以解决的。

 

 

posted @ 2019-03-19 21:24  上课用书是构建之法  阅读(74)  评论(0编辑  收藏  举报