新学期开始,第一堂的软件工程课,拿到书本看了下,感觉神一般得迷,就觉得很难学。以下是我上完第一次课得理解:
一.什么是软件工程h1>
1.软件工程
是把系统得、有序得、可量化得方法应用到软件得开发、运营和维护上得过程。
2.软件工程包括下列领域
软件需求分析、软件设计、软件构建、软件测试和软件维护。
3.软件工程和下列学科相关
计算机科学、计算机工程、管理学学、数学、项目管理学、质量管理、软件人体工学、系统工程、工业设计和用户界面设计。
二.软件工程和软件开发流程
1.人们在开发、运营、维护软件得过程中有很多技术、做法、习惯和思想体系。软件工程把这些相关的技术和过程统一到一个体系中,叫“软件开发流程”。
2.软件开发流程得目的是为了提高软件开发、运营、维护效率,并提高软件得质量、用户满意度、可靠性和软件得可维护性。
三.软件工程得组成
程序=数据结构+算法
软件=程序+软件工程
软件公司=软件工程+商业模式
四.软件得特性
复杂性
不可见性
易变性
服从性
非连续性
五.课后练习
课上一道题目感觉充分得解释了什么是软件工程。用代码实现每天随机产生300道四则运算得小学题。
看到这题我首先想到了随机数,因为数不固定而且300道,只能用随机数来随机产生数来给出题目,而四则运算(即+,-,*,/),那我想到用数组来存储,课后突然老师点播说可以用case语句,我觉得这个看上去更名了,所以可以用C语言来完成这个题目,毕竟python太菜。我觉得这个程序主要有3个地方需要注意。首先是随机生成问题,只使用rand()是不对的,这样生成的数是伪随机数,上 查了一下得知最简单的解决方法是应该在主函数里加上一句srand(time(0)),这里我最初是在每个rand()前都加上了srand(time(0)),导致产生的随机数都一样,应该只要在主函数里加一句就行了。这是个值得注意的地方。其次是关于如何保证结果都是非负数,由于是四则运算,因此只有出现“-” 的时候才会有这种可能。我是这样解决的:用x和y来表示整数题目时2个运算数,当出现“-”时(if(op==‘-’)),通过while(x-yb且c>d就好了。
char Operator()
{
char op;
int a;
a=rand()%4+1;
switch(a)
{
case1:return’+’;
case2:return’-‘;
case3:return’x’;
case4:return’/’;
}
}void integer()
{
int x,y;
char op;
x=rand()%100+1;
y=rand()%100+1;
op=Operator();
if(op==’-‘)
while(x
{
x=rand()%100+1;
y=rand()%100+1;
}
cout
}void fraction()
{
int a,b,c,d;
a=rand()%100+1;
b=rand()%100+1;
c=rand()%100+1;
d=rand()%100+1;
char op;
while(a
{
a=rand()%100+1;
b=rand()%100+1;
c=rand()%100+1;
d=rand()%100+1;
}
op=Operator();
if(op==’-‘)
while((b*c-a*d)
{
a=rand()%100+1;
b=rand()%100+1;
c=rand()%100+1;
d=rand()%100+1;
}
cout
}+void main()
{
srand(time(0));
int a,n,m;
cout
cout
cout
cin>>a;
cout
cin>>n;
for(m=1;m
{
if(a==1)
integer();
else fraction();
}
}
文章知识点与官方知识档案匹配,可进一步学习相关知识C技能树首页概览115933 人正在系统学习中 相关资源:泡泡堂辅助软件V1.0
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!