软件基础_补充教材10_习题答案二
软件技术课后习题及答案
2习题与思考题 (1)2.1 试根据题意写出空白处的内容。
(1)2.2 试从下列四个选项中选择正确的答案(单选题) (2)2.3 试判断下列各题(是/否)。
(5)2.4 试读下列程序,并分析程序运行结果 (6)3习题与思考题 (9)3.1 试根据题意写出空白处的内容 (9)3.2 试从下列四个选项中选出正确的答案 (10)3.3 试判断下列各题(是/否) (12)4习题与思考题 (15)4.1 试根据题意写出空白处的内容 (15)4.2 试从下列四个选项中选出正确的答案 (15)4.3 试判断下列各题(是/否) (18)5习题与思考题 (20)5.1 试根据题意写出空白处的内容 (20)5.2 试从下列四个选项中选出正确的答案 (20)5.3试判断下列各题(是/否) (21)2习题与思考题2.1 试根据题意写出空白处的内容。
(1)Visual Basic是可视化的、面向对象、采用事件驱动方式的结构化高级程序设计语言。
(2)在Visual Basic开发集成环境中,如果工具箱不可见,应在工具主菜单中操作而使它可见。
(3)双击窗体中的对象后,Visual Basic将显示的窗口是代码窗口。
(4)要使窗体在运行时最大化,应设置其WindowState属性。
(5)可以同时删除字符串前导和尾部空白的函数是trim。
(6)函数V al(aSd76fG2hgf356)的返回值是。
(7)在窗体上画三个单选按钮,组成一个名为chkOption的控件数组。
用于标志各个控件数组元素的参数是______。
(8)在按下“Esc”键后,要让程序执行CommandButton_Click事件中的代码,应将CommandButton的属性设为True。
(9)使一个控件不可见,应设置其Visible属性。
(10)若要将窗体从内存中卸载出去,其实现的方法是Unload。
2.2 试从下列四个选项中选择正确的答案(单选题)(1)一个对象可以执行的动作和可被对象识别的动作分别称为 A 。
《计算机软件技术基础》习题及参考答案
4.以下数据结构中不属于线性数据结构的是______。
A. 队列 B. 线性表 C . 二叉树 D. 栈
5.在计算机中,算法是指______。
A. 查询方法 B. 加工方法 C. 解题方案的准确而完整的描述 D. 排序方法
6.在下列选项中,哪个不是一个算法一般应该具有的基本特征______。
B. 随机存取的存储结构、顺序存取的存储结构
C. 随机存取的存储结构、随机存取的存储结构
D. 任意存取的存储结构、任意存取的存储结构
14.下列关于栈的描述中错误的是。
A.栈是先进后出的线性表B.栈只能顺序存储
C.栈具有记忆作用D.对栈的插入和删除操作中,不需要改变栈底指针
15.栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是______。
A. 程序的规模 B. 程序的易读性 C. 程序的执行效率 D. 程序的可移植性
30.对建立良好的程序设计风格,下面描述正确的是______。
A. 程序应简单、清晰、可读性好 B. 符号名的命名要符合语法
C. 充分考虑程序的执行效率 D. 程序的注释可有可无
31.下面对对象概念描述错误的是______。
A. 任何对象都必须有继承性 B. 对象是属性和方法的封装体
C. 对象间的通讯靠消息传递 D. 操作是对象的动态性属性
32.在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送______。
A. 调用语句 B. 命令 C. 口令 D. 消息
33.面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是______。
计算机软件技术基础教程(第二版)习题及答案
第1章习题部分答案1. 操作系统的发展分为那几个阶段?解:操作系统的发展经历了三个阶段:操作系统的酝酿阶段、操作系统的形成阶段、操作系统的理论化和标准化阶段。
2. 计算机软件技术开发系统包括那几个阶段?解:计算机软件开发系统的发展经历了四个阶段:机器语言阶段、汇编语言阶段、高级语言阶段、面向对象语言和可视化语言阶段。
3. 计算机软件技术的主要范畴是什么?解:计算机软件技术的主要范畴包括软件工程技术、程序设计技术、软件工具环境技术、系统软件技术、数据库技术、实时软件技术、网络软件技术、与实际工作相关的软件技术等八个领域的内容。
4. 从软件技术的发展现状来看有哪些值得我们注意的问题?解:从软件技术的发展现状来看有以下几个值得我们注意的问题:1)软件危机2)软件技术标准,软件版权和软件价值评估3)软件技术的基础研究。
1第2章习题部分答案1. 什么是软件危机?软件危机的表现有哪些?解:软件开发技术的进步为能满足发展的要求,在软件开发中遇到的问题找不到解决的方法,问题积累起来形成了尖锐的矛盾,导致了软件危机。
2. 软件危机产生的原因是什么?解:造成软件危机的原因是由于软件产品本身的特点以及开发软件的方式、方法、技术和人员引起的。
1)软件规模越来越大,结构越来越复杂。
2)软件开发管理困难而复杂。
3)软件开发费用不断增加。
4)软件开发技术落后。
5)生产方式落后。
6)开发工具落后,生产率提高缓慢。
3. 常见的软件过程模型有哪些?解:常见的软件过程模型有瀑布模型、增量模型、演化过程模型、敏捷开发4. 如何对软件质量进行评价?解:软件质量的评价主要围绕可维护性、可靠性、可理解性和效率这几个方面进行。
2第3章习题部分答案1. 软件可行性研究的目的是什么?软件可行性研究的任务又是什么?解:软件可行性研究的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。
可行性研究的任务首先需要进行概要的分析研究,初步确定项目的规模和目标,确定项目的约束和限制,把他们清楚地列举出来。
计算机软件基础第二章课后答案概述
2.8已知线性表L (a1,a2,…,an)元素按递增有序排列,用向量作存储结构,试编写算法: 删除表中在c与d(c w d)之间的元素。
解:dele(L,n,c,d) 1. k=02. for i=1 to n3. if L[i] > c.and. L[i] w d4. k J k+15. en dif6. if L[i] > d7. L[i-k] J L[i]8. en dif9. en dfor10. n J n-k11. return2.9L.l戟性说屛11中的扎朮为7耆芷出.用向贰培构布族,诸編写F"卜刿斯R是否为*的子序丸£比如.A-ll'NGLISEil . ft-llTS-.则棘R是人肝序刿h源代码:肖include cs&ing.h^bool judgcmciriEtdiaT * fc char *); 厅判Ifr m数iinl main (void)Ichar B[LQOlb[IQO]:意入字御向讀a和hpuisfi^输入字材向总a:-):gets^aXpufsTW输展字符向胡b:");gets(忖;■iaffitticif tj nd gementt aJb}* prim<1 "b 足p的于序列.it");else pri nLfl. '* 彳;圧H的-f rjp 捌“ M J;ictum(O);else prin世T J不也的子序列■ 'iT): returnF(O):.bwl; jiudgcrncnKchar *a,ch^ir *b)rinc 订£ 丄]芒najenh; llcna-ilden(a):Icnb^siflcnfb);iif(tena<lcTib) TEtirm(Ci):elserik-D;i-G'while (Ik ii&{lenii'lcrtb))$4Hk 戸;while(!i &aj<tenb-i) I■if(4j]1=1b[j-iD i=l;else j++j}:if(!L}k ]:else i++;};};if(k=l) iBHirn(true}; ^'i hJ J -'? --'J. i _k I ; I<< . k 0else rc[nm( lulsc):迄和站栗t2.21有一铁路交换站如题图(栈),火车从右边开进交换站,然后再开到左边,每节车厢均有编号如1,2,3,…,n。
软件工程第十版课后习题答案(中文版)
第一章概述1.2 通用的软件产品开发和定制化软件开发之间最重要的区别是什么?这在实践中对于通用软件产品的用户意味着什么?根本区别在于,在通用软件产品开发中,规范由产品开发者拥有。
对于定制产品开发,规范由客户拥有和控制。
这一点的影响是重大的——开发者可以根据一些外部变化(例如竞争产品)迅速决定更改规范,但当客户拥有规范时,更改必须在客户和开发者之间进行协商,并且可能会产生合同影响。
对于通用产品的用户,这意味着他们无法控制软件规范,因此无法控制产品的演变。
开发者可能会决定包含/排除功能并更改用户界面。
这可能会对用户的业务流程产生影响,并在安装新版本的系统时增加额外的培训成本。
这也可能会限制客户改变自己业务流程的灵活性。
1.3 软件产品应该具有的4个重要属性是什么?另外举出4个可能有意义的属性。
四个重要的属性是可维护性、可靠性和安全性、效率和可接受性。
其他可能重要的属性可能是可重用性(它是否可以在其他应用程序中重用)、可分布性(它是否可以分布在处理器网络上)、可移植性(它是否可以在多个平台上运行,例如笔记本电脑和移动平台)和互操作性(它是否可以与广泛的其他软件系统一起工作)。
对 4 个关键属性的分解,例如可靠性分解为安全性、安全性、可用性等,也是这个问题的有效答案。
1.4 除了异构性、企业和社会的变革、可信和信息安全之外,说一说软件工程在21世纪有可能面对的其他问题和挑战(提示:想一想环境)。
软件工程面临的问题与挑战众多,主要包括:1.开发节能系统,以提升其在低功耗移动设备上的适用性,并减少IT设备的整体碳排放。
2.开发模拟系统的验证技术,这对于预测和应对气候变化的程度至关重要。
3.开发适合多文化背景用户使用的系统。
4.开发能够迅速适应新商业需求的灵活系统。
5.设计便于外包开发的系统架构。
6.开发具有高安全性的系统,能够抵御各种攻击。
7.开发易于最终用户调整和配置的系统。
8.探索测试、验证和维护最终用户开发系统的有效方法。
软件技术基础第三版课后习题答案
第二章程序设计语言计算机工作是执行相应程序,程序规定了执行的动作和动作的执行顺序。
程序的表达手段是程序设计语言。
程序设计语言是人- 机交换信息的媒体;是表达软件(程序)的工具;是人- 人交换信息的工具。
软件的开发和使用,协作开发、使用修改都要读程序,程序设计语言必须规范化和标准化。
程序设计语言是与计算机通信创造的语言,严格、小巧,没有二义性(语句执行只有一个解释)。
2.1 高级程序设计语言概述最初的语言是机器语言。
机器语言在内存中开辟两个区:数据区存放数据;指令区存放指令。
CPU 从指令区第一个地址开始逐条取出指令并释义执行,直到所有的指令都被执行完。
一般的指令格式2.2.2 高级语言程序的解释执行编译型语言由于可进行优化(有的编译器可作多次优化),目标码效率很高,是目前软件实现的主要方式。
语言编写的源程序,都需要进行编译、连接,才能生成可执行程序。
编译时花费时间但程序的执行效率提高。
对高级语言源程序采取解释执行的方式.解释执行需要有一个解释器(Interpreter ),它将源代码逐句读入。
先作词法分析,建立内部符号表;再作语法和语义分析,即以中间码建立语法树,并作类型检查。
完成检查后把每一语句压入执行堆栈,压入后立即解释执行。
操作系统的命令、BASIC 、VB 、Prolog 、LISP 、Java 、Java Script Post script2 .3 .1 变量、表达式、赋值使用符号常量,只需一次性改动其赋值就行了。
赋值和函数调用是程序语言改变变量的值的基本手段。
不同的语言所使用的赋值号并不完全相同,比如Pascal 语言的赋值号是“:=”,而在C 语言、Java 语言、VB 等语言中,赋值号是“ =”。
程序中的一条语句对应着计算机的一条命令(用一条或多条指令来实现)。
一个赋值语句就是一条赋值命令。
2.3.2 程序的控制结构程序约定自上向下自左向右地执行,即顺序地执行语句(或表达式)。
计算机软件基础习题及参考答案
习题一1.什么是数据结构,数据的逻辑结构,数据的存储结构?数据结构对算法有什么影响?请举例说明。
2.数据结构的存储方式主要有哪两种?它们之间的本质区别是什么?3.设n为正整数, 分析下列各程序段中加下划线的语句的执行次数。
(1) for (int i = 1; i <= n; i++)for (int j = 1; j <= n; j++) {c[i][j] = 0.0;for (int k = 1; k <= n; k++)c[i][j] = c[i][j] + a[i][k] * b[k][j];}(2) x = 0; y = 0;for (int i = 1; i <= n; i++)for (int j = 1; j <= i; j++)for (int k = 1; k <= j; k++)x = x + y;(3) int i = 1, j = 1;while (i<=n && j<=n) {i = i + 1; j = j + i;}(4)*int i =1;do{for (int j = 1; j <= n; j++)i = i + j;}while(i<100 + n);4.试编写一个函数计算n!*2n的值,结果存放于数组A[arraySize]的第n个数组元素中,0 ≤n ≤arraySize。
若设计算机中允许的整数的最大值为maxInt,则当n>arraySize或者对于某一个k (0 ≤ k ≤ n),使得k!*2k > maxInt时,应按出错处理。
可有如下三种不同的出错处理方式:(1) 用printf显示错误信息及exit(1)语句来终止执行并报告错误;(2) 用返回整数函数值0, 1来实现算法,以区别是正常返回还是错误返回;(3) 在函数的参数表设置一个引用型的整型变量来区别是正常返回还是某种错误返回。
计算机软件基础(二)习题解解答
算机软件基础习题解答第一章概论(答案参阅)1、P12、P23、P44、P45、P56、P27、P7& P59、P72、第二章数据结构一、选择题1. B P18(2)2. D P16(5)3. D P26 (40 )4. C P23 ( 1 )5. D P30 (3)即:98+ ((8-1) X 8 +(3- 1)) X 5 = 3886. C P35 (2)7. B P34(3)8. A P35(45)9. B P36 (7) 10. C P36 (48)11. A P38(5)12. B P45(41)_、填空题1.数据兀素数、字符串、一个或多个数据项P9(40)2.顺序存储结构P11(9)3.随机P15 (48)顺序P16(40)4.栈顶栈底P22 (38)5.队列P256.行下标列下标该兀素的值7.i-12 P358.右孩子P38(40)9.线性查找P45(30)10.F ()即探测总次数为1+2+3 + …+n-111. Log2256=8三、判断题1. B2. B3. B4. B5. B6. A7. A四、问答题1. P 112. 对一个已建立好的单链表(表头指针为head),编写一算法计算该链表中的结点个数。
(要求给出结点的结构描述)统计结点个数int ListLength(LinkList head){int i=0;LinkList p=head->next;While (p){i++;p=p->next;}return i;}3. 给定一个n项元素的线性表V,写一个过程将元素排列的次序颠倒过来,# define n 100Int V[n];Int k=0,front=1,rear=n;8. A 9. BScanf( %d ",&V[n]); While(front!=rear); V[0]=V[front]; V[front]=V[rear]; V[rear]=V[O];frout++;rear--;4 •试设计实现在单链表中删去值相同的多余结点的算法del(L in kList *head){ 〃删除单链表中值相同的多余结点Li nkList *p, *s, *q;p=head->n ext;while(p!=NULL && p-> next!=NULL){ s=p; //s指向要删除结点的前趋q=p->n ext;while (q!=NULL){ if (q->data= =p->data)} //查找值相同的结点并删除{ s->n ext=q->next;free(q);q=s->n ext;}else{ s=q;q=q_>n ext;}}p=p->n ext;}}5. P206 •设计计算线性链表长度的算法int Listle ngth(Li nklist L) // 求链表长度{Lin klist p;int j=0;p=L;while(p-> next!=NULL){++j;p=p->n ext;}return j;7. 设一线性链表,其结点值为正整数序列,且按值从小到大链接,设计算法,将此线性链表分成两个纯属链表,其中一个结点值均为奇数,而另一个均为偶数,且也是从小到大链接。
计算机软件技术基础(第三版)课后习题答案较全
计算机软件技术基础(第三版)课后习题答案较全第一章信息与计算机1.1 什么是信息?信息与数据的区别和联系在何处?信息定义之一:信息是现实世界中存在的客观实体、现象、关系进行描述的数据。
信息定义之二:信息是经过加工后并对实体的行为产生影响的数据。
与数据的区别和联系:数据定义:数据是现实世界客观存在的实体或事物的属性值,即指人们听到的事实和看到的景象。
我们把这些数据收集起来,经过处理后,即得到人们需要的信息。
信息和数据的关系可以归结为:1. 信息是有一定含义的数据。
2. 信息是经过加工(处理)后的数据。
3. 信息是对决策有价值的数据。
1.2 信息有哪些基本属性?信息的基本属性有: 1. 事实性。
2. 等级性。
3. 可压缩性。
4. 可扩散性。
5. 可传输性。
6. 共享性。
7. 增值性和再生性。
8. 转换性。
1.3 计算机的主要特点是什么?计算机最主要的特点是: 1. 高速自动的操作功能。
2. 具有记忆的能力。
3. 可以进行各种逻辑判断。
4. 精确高速的计算能力。
1.5 完整的计算机系统应该包括哪几部分?目前最完整的计算机系统学说认为由五部分组成: 1. 人员 2. 数据3. 设备 4. 程序 5. 规程1.6 什么是计算机硬件?什么是计算机软件?硬件:泛指实际存在的物理设备,包括计算机本身及其外围设备。
微型计算机的硬件系统:主机、外存储器、输入设备、输出设备、微机的系统总线。
软件:是指计算机程序、方法、规则的文档以及在计算机上运行它时所必须的数据。
计算机软件一般分为系统软件和应用软件。
1.8 软件技术发展的几个阶段各有什么特点?它与硬件的关系如何?第一阶段:高级语言阶段特点:这一时期,编译技术代表了整个软件技术,软件工作者追求的主要目的是设计和实现在控制结构和数据结构方面表现能力强的高级语言。
但在这一时期内,编译系统主要是靠手工编制,自动化程度很低。
硬件关系:此时期计算机的硬件要求仅能用机器指令来编制可运行的程序。
软件工程10—11章答案.docx
10.1请读者谈谈对“软件产品的分类”的看法。
软件产品分为三类:笫一类为:不需要客户化的软件产品如系统软件中的操作系统、编译系统、数据库管理系数、CASE 工具,以及应用软件中的杀病毒工具、游戏系统等。
这些软件产品的通用性太强,用户买来安装Z后,直接使用即可。
所以用户群特大,儿乎是全球所有客户。
第二类是只需要少量客户化工作的软件产品,如财务系统、保险系统、金融证券系统、税务系统、海关系统、政府办公系统、公检法系统、电力控制系统、电信计费系统等。
因为这些行业专业性强,各种法规制度健全,业务流程规范,信息标准化工作基础扎实。
这些软件产品尽管也需要适当的客户化,如代码表的修改及初始化,报表与查询格式的调整,但全局性的数据库和数据结构不会改变。
这种客户化的工作,仅仅是程序代码级的,不是数据库和数据结构级的。
第三类是需要重新做业务流程规范和需求规格定义的软件产品,这种软件产品的客户化工作量大,工期也较长,如分行业的管理信息系统MIS、分行业的企业资源规划系统ERP、分行业的客户关系。
10.2怎样解释“客户化”和“初始化”两个名词的含义及关系?客户化:按照客户的实际需求,对软件产品的功能、性能、接口作适当的修改。
初始化:按照客户的实际情况,对软件产品的代码表(又称数据字典)进行初始化,即将客户的各种信息编码录入到相应的代码中。
此外,初始化还包插数据库中所有基本表的数据加载, 即所有基本表屮必要记录的录入工作。
二者关系:初始化工作简单,客户化工作复杂。
客户化工作中自然包含了初始化工作,初始化工作只是客户化工作的一小部分。
10.3软件项目与软件产品有什么不同?软件产品是指不局限于特定业务领域、能被广大用户直接使用的软件系统。
软件项目是指针对特定业务领域、需要提供业务流程重组与优化的软件系统。
软件产品主要考虑通用性,而软件项目更多是满足具体客户的特点。
10.4软件产品发布的方式有哪几种?⑴聘请各有关领导、新闻媒体记者及大客户代表,召开新闻发布会,宣布新产品的优点,描述其市场前景,现场演示介绍,厂商给嘉宾和客人送产品资料和纪念品。
软件基础习题2021 10答案
软件基础习题2021 10答案软件基础习题2021-10答案数据结构习题答案第一节概论一、选择题1.要求同一逻辑结构的所有数据元素具有相同的特性,这意味着()。
a.数据元素具备同一的特点*b.不仅数据元素涵盖的数据项的个数必须相同,而且对应数据项的类型必须一致c.每个数据元素都一样d.数据元素所涵盖的数据项的个数必须成正比2.数据结构是一门研究非数值计算的程序设计问题中计算机的((1))以及它们之间的((2))和运算的学科。
(1)a.操作对象b.计算方法*c.物理存储d.数据映像(2)a.结构*b.关系c.运算d.算法3.数据结构被形式地定义为(d,r),其中d就是((1))的非常有限子集,r就是d上((2))的非常有限子集。
(1)a.算法*b.数据元素c.数据操作方式d.逻辑结构(2)a.操作方式b.蓝光c.存储*d.关系4.在数据结构中,从逻辑上可以把数据结构分成()。
a.动态结构和静态结构b.紧凑结构和非紧凑结构*c.线性结构和非线性结构d.内部结构和外部结构5.线性表的顺序存储结构是一种()的存储结构。
*a.随机存取b.顺序读取c.索引读取d.hash读取6.算法分析的目的就是()。
a.找出数据结构的合理性b.研究算法中的输入和输出的关系*c.分析算法的效率以求改进d.分析算法的易懂性和文档性7.计算机算法所指的就是((1)),它必须具有输出、输入和((2))等五个特征。
(1)a.计算方法b.排序方法*c.解决某一问题的有限运算序列d.调度方法(2)a.可行性、可移植性和可扩充性*b.可行性、确定性和有穷性c.确定性,有穷性和稳定性d.易读性、稳定性和安全性8.线性表若采用链表存储结构,要求内存中可用存储单元的地址()。
a.必须就是已连续的b.部分必须就是已连续的c.一定就是不已连续的*d.已连续不已连续都可以9.在以下的描述中,恰当的就是()。
a.线性表的线性存储结构优于链式存储结构*b.二维数组是它的每个数据元素为一个线性表的线性表c.栈的操作方式是先进先出d.队列的操作方式是先进后出10.根据数据元素之间关系的相同特性,以下四类基本的逻辑结构充分反映了四类基本的数据组织形式,其中表述错误的就是()。
软件技术基础习题答案
操作系统1.如何理解虚拟机的概念?答:虚拟机就是在裸机上扩展一层软件,将硬件实现细节隐藏起来,使用户能够更方便、更灵活使用的计算机。
2.什么是多道程序设计,它的主要优点是什么?答:多道程序设计就是允许多个程序同时进入内存并运行。
主要优点:提高资源利用率,从而提高了系统的吞吐量。
3.试述分时系统与实时系统,并比较它们的区别。
答:分时系统是指能够允许多个用户同时使用一台计算机的系统。
实时系统是指能够及时响应随机发生的外部事件,并在严格的时间范围内完成对该事件处理的系统。
实时系统对系统响应速度要求更高,可靠性要求更高。
(或者说明分时系统与实时系统各自特点)4.一般从哪几方面对操作系统的性能进行评价?1)可靠性2)方便性3)效率4)可维护性5)可移植性5.试说出几种你所熟悉的操作系统名称,并说明其特征。
答:Linux特征:支持多用户、多任务,具有良好的用户界面,设备独立性,系统安全性能高,良好的可移植性。
Windows特征:支持多用户、多任务,具有友好的图形用户界面,强大的内存管理功能,可靠性高,操作简单。
6.根据你试用计算机系统的经验,说明操作系统的作用。
答:控制和管理计算机系统内各种硬件和软件资源、合理有效地组织计算机系统的工作,为用户提供一个使用方便可扩展的工作环境,从而起到连接计算机和用户的接口作用。
7.如何理解网络操作系统的主要功能?答:用于管理网络通信和共享资源,协调各主机上任务的运行,并向用户提供统一的、有效的网络接口,包括网络管理、通信、资源共享、系统安全和多种网络应用服务。
8.如何理解进程的概念?进程与程序的区别是什么?进程与作业的联系和区别是什么?答:进程是一个可以并发执行的程序或程序段在一个数据集合上的执行过程,他是系统分配资源的基本单位。
区别:1)经常是一个动态的概念,是执行程序的动态过程,它因创建而产生,因调度而执行,因撤销而消亡。
而程序是一个静态的概念,是进程运行的静态文本。
《软件》课后习题答案
第一章1.什么是程序,程序有哪些特性?程序:是—个用计算机语言描述的某—问题的解决步骤,它的表示是静态的。
特性:静态与动态属性,由程序语言抽象的符号表达,是对数据施行算法的过程,是分层嵌套的。
2.软件有哪些特性?特性:功能、性能相对完备的程序系统,具有使用性能的软设备,软件是信息商品,易大批量生产、成本低,是极具竞争性的商品,投入的资金主要是人工费,是只有过时而无“磨损"的商品。
3.什么是群件,目前常见的群件产品有哪些?群件:是近几年开发的—种基千电子邮件的应急系统软件,它拓宽了电子邮件的的内涵涵盖了很多通信协调功能。
目前常见的群件产品有:IBM公司的lotusNote、Microsoft公司的EGchangeServer、Novell公司的Group Wise等4计算机的软件是由哪几部分组成的,各自的作用是什么?软件由:软件程序(解题步骤)+数据(描述事物的属性和状态)+文档(功能性能的说明性信息)组成。
5什么是程序开发环境,常见的开发环境有那些?程序开发环境:即现在作用到的编程语言,—般以—个集成环境的形式出现。
此环境中包含了语言编辑器,调试工具,编译工具,运行工具,图标图像制作工具等。
6常见的Internet工具有哪些?We b服务器软件、w e b浏览器文件传送工具FTP、远程访问工具T elne t 邮件软件、网络聊天、多媒体等。
7操作系统的作用(功能)是什么?1、处理器管理2、存储器管理3、设备管理4、文件管理5、作业管理。
8. 文件系统足以支持程序运行,数据库的作用是什么?克服文件系统的缺陷。
9软件开发的核心是绷制可运行的程序,还有比这跟覃要的工作么?系统分析和数据分析。
10. 程序设计语言本身是软件么?是,而且是系统软件。
第二章1. 程序设计语言有哪两种实现方式,各有什么优缺点?方式—:编译(优:可进行优化,目标码效率很高。
缺:费时)方式二:解释(优:可以逐句读入源代码,比较灵活,小巧。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《计算机软件基础》补充教材 V2.1
K2-
4
n4[n] = i4; n6[n] = i6; n9[n] = i9; cost[n] = i4*c4 + i6*c6 + i9*c9; printf("cost = %2d*%2d+%2d*%2d+%2d*%2d = %2d\n", i4, c4, i6, c6, i9, c9, cost[n]); n++; } printf("n=%2d\n", n); } 4-4A4 定义含有n4,n6,n9和cost的结构数组rs[]。 #include <stdio.h> #define RS struct rs #define MAX_N 300 RS { int n4, n6, n9, cost; }; main() { int c4=20, c6=25, c9=30, e4=100/4, e6=100/6, e9=100/9; int n=0, n4, n6, n9, i; RS rs[MAX_N]; for(n4=1; n4<=e4; n4++) for(n6=1; n6<=e6; n6++) for(n9=1; n9<=e9; n9++) if(n4*4 + n6*6 + n9*9 == 100) { rs[n].n4 = n4; rs[n].n6 = n6; rs[n].n9 = n9; rs[n++].cost = n4*c4 + n6*c6 + n9*c9; } for(i=0; i<n; i++) printf("cost = %2d*%2d+%2d*%2d+%2d*%2d = %2d\n", rs[i].n4, c4, rs[i].n6, c6, rs[i].n9, c9, rs[i].cost); printf("n=%2d\n", n); } 4-4A5 定义指针n4,n6,n9和cost,动态分配存储单元。 #include <stdio.h> main() { int c4=20, c6=25, c9=30, e4=100/4, e6=100/6, e9=100/9, n=0; int *n4, *n6, *n9, *cost, i4, i6, i9;
《计算机软件基础》补充教材 V2.1
K2-
6
4-4A7 定义含有n4,n6,n9,cost和结构指针的结构指针prs。每得到一种方案,动态分配 一结构单元,用指针链结各个结构。 #include <stdio.h> #define PRS struct prs PRS { int n4, n6, n9, cost; PRS *next; }; main() { int c4=20, c6=25, c9=30, e4=100/4, e6=100/6, e9=100/9; PRS *prs=NULL, *tmp; int i4, i6, i9, n=0; for(i4=1; i4<=e4; i4++) for(i6=1; i6<=e6; i6++) for(i9=1; i9<=e9; i9++) if(i4*4 + i6*6 + i9*9 == 100) { tmp = (PRS *)malloc(sizeof(PRS)); tmp->n4 = i4; tmp->n6 = i6; tmp->n9 = i9; tmp->cost = i4*c4 + i6*c6 + i9*c9; tmp->next = prs; prs = tmp; } for(tmp=prs; tmp!=NULL; tmp=tmp->next, n++) printf("cost = %2d*%2d+%2d*%2d+%2d*%2d = %2d\n", tmp->n4, c4, tmp->n6, c6, tmp->n9, c9, tmp->cost); printf("n=%2d\n", n); } 4-4B3 定义数组n4[],n6[],n9[]和cost[]。用void drawer()计算。 #include <stdio.h> void drawer(n4, n6, n9, cost, n) int n4[], n6[], n9[], cost[], *n; { int c4=20, c6=25, c9=30, e4=100/4, e6=100/6, e9=100/9; int i4, i6, i9; for(i4=1; i4<=e4; i4++) for(i6=1; i6<=e6; i6++) for(i9=1; i9<=e9; i9++) if(i4*4 + i6*6 + i9*9 == 100)
《计算机软件基础》补充教材 V2.1
K2-
2
} return(n); } int getTop(n) int n; { int top, i; float maxScore; for(maxScore=0.0, top=-1, i=0; i<n; i++) if(Student[i].score > maxScore) { top = i; maxScore = Student[i].score; } if(top >= 0) Student[top].score = -Student[top].score; return(top); } main() { int i, n, top; n = readFile(); for(i=0; i<3; i++) { if((top = getTop(n)) < 0) error("cannot find top student.\n"); printf("Name: %-20s ", Student[top].name); printf("score=%5.2f ", -Student[top].score); printf("exercise=%5.2f ", Student[top].exercise); printf("practice=%5.2f\n",Student[top].practice); } } 4-4A1 定义n4, n6,n9和cost为变量。 #include <stdio.h> main() { int c4=20, c6=25, c9=30, e4=100/4, e6=100/6, e9=100/9, n=0; int n4, n6, n9, cost; for(n9=1; n9<=e9; n9++) for(n6=1; n6<=e6; n6++) for(n4=1; n4<=e4; n4++) if(n4*4 + n6*6 + n9*9 == 100) {
《计算机软件基础》补充教材 V2.1
K2-
3
cost = n4*c4 + n6*c6 + n9*c9; printf("cost = %2d*%2d+%2d*%2d+%2d*%2d = %2d\n", n4, c4, n6, c6, n9, c9, cost); n++; } printf("n=%2d\n", n); } 4-4A2 定义含有n4,n6,n9和cost的结构变量rs。 #include <stdio.h> #define RS struct rs RS { int n4, n6, n9, cost; }; main() { int c4=20, c6=25, c9=30, e4=100/4, e6=100/6, e9=100/9, n=0; RS rs; for(rs.n4=1; rs.n4<=e4; rs.n4++) for(rs.n6=1; rs.n6<=e6; rs.n6++) for(rs.n9=1; rs.n9<=e9; rs.n9++) if(rs.n4*4 + rs.n6*6 + rs.n9*9 == 100) { rs.cost = rs.n4*c4 + rs.n6*c6 + rs.n9*c9; printf("cost= %2d*%2d+%2d*%2d+%2d*%2d= %2d\n", rs.n4, c4, rs.n6, c6, rs.n9, c9, rs.cost); n++; } printf("n=%2d\n", n); } 4-4A3 定义数组n4[],n6[],n9[]和cost[]。 #include <stdio.h> #define MAX_N 500 main() { int c4=20, c6=25, c9=30, e4=100/4, e6=100/6, e9=100/9, n=0; int n4[MAX_N], n6[MAX_N], n9[MAX_N], cost[MAX_N]; int i4, i6, i9; for(i9=1; i9<=e9; i9++) for(i6=1; i6<=e6; i6++) for(i4=1; i4<=e4; i4++) if(i4*4 + i6*6 + i9*9 == 100) {