第10章 程序设计基础_习题参考答案

合集下载

《程序设计基础(C++)》实验教程及完整答案

《程序设计基础(C++)》实验教程及完整答案

《程序设计基础》实验教程对于从事计算机行业的人员来说,设计能力是最主要的基本功之一。

入门课程《程序设计基础》的学习效果将直接关系到编程能力的掌握和提高以及后续课程的学习。

然而,实践证明,许多初学者在学习这门课程时的效果并不理想。

对初学者来说,如何学好本课程?首先,要理解教材中所给出的语法描述,并学会按语法规定去编写指定问题的求解程序。

经过这样的多次反复,初学者就可以找到编程的感觉。

除了要学好理论知识外,更重要的一点是要到计算机上去验证,因为只有实践才是检验真理的标准。

只有通过到计算机上去实践,才能发现学习中存在的问题,巩固所学知识,加强解决实际问题的能力,增强信心。

因此,《程序设计基础》课程的上机实验是本课程必不可少的实践环节,必须加以重视。

本课程上机实验的目的是使学生熟悉用高级语言解决实际问题的全过程,加深对语言的理解,得到程序设计基本方法和能力的训练。

在独立编写程序、独立上机调试程序的同时,真正能用高级语言这个工具去解决实际问题,对计算机学科的相关知识有所了解,从而为后续课程的学习奠定良好的基础。

本实验指导所用环境是Visual C++ 6.0及以上版本。

考虑到本课程的内容和特点,设置了十四个实验,每次实验需要两至三小时,分别侧重于教材中的一个方面,其中标有“*”号的习题的综合性较强,可供学有余力的学生选择。

实验时也可根据具体情况做适当调整。

虽然可能由于课时和机时限制等原因而不能在实验课时内全部得到安排,但还是建议学生能将其中的每个实验都能认真做一遍,因为这些实验都是学习本课程所必需的。

学生在做实验之前应仔细阅读本实验指导书,初步掌握实验的基本要求和实验方法。

在实验过程中,学生应该有意识的培养自己调试程序的能力,积累发现问题、解决问题的经验,灵活主动的学习。

对于分析运行结果的实验习题,上机前先进行用人工分析,写出运行结果,与上机调试得到的结果进行对照,如有差异,分析其原因。

对于程序编制的实验习题,上机前应考虑出较成熟的编程思路,有意识提供出多种方案,以灵活运用所学知识和技巧。

c语言《程序设计基础》课后习题参考答案与解析

c语言《程序设计基础》课后习题参考答案与解析

c语言《程序设计基础》课后习题参考答案与解析《程序设计基础》习题参考答案与部分解析第1章 C 语言概述一、填空a) C源程序的基本单位是函数。

b) 一个C程序中至少应包括一个 main函数。

c) 在C语言中,输出操作是有库函数 printf( )函数完成。

二、单选题1、A2、C3、B解析:第1题答案:A 。

因为一个C程序总是从main函数开始执行的,而不论main函数在程序中的位置。

且到main函数结束。

第2题答案:C 。

因为 main函数没有限制必须位于程序的最前面。

C程序书写自由,一行内可写几个语句。

在对一个C 程序进行编译的过程中,无法检查注释当中的拼写错误。

不过C语言本身并没有输入输出语句,输入输出是由函数完成的。

第3题答案:B。

因为一个C语言程序是由若干个函数组成的。

但至少包含一个main 函数,且main函数的位置不限。

三、编程题1、编写一个输出“Welcome to C!”信息的小程序。

解:程序如下#include “stdio.h”main( ){1printf(“Welcome to C!”) ;}2、已知三角形的三边长分别为3,4,5,试用海轮公式编程求其面积。

海伦公式为:S?= ,其中s= (a+b+s)/2 ;解:程序如下#include “math.h”#include “stdio.h”main( ){int a , b , c ; /* a ,b,c 3个整型变量表示三角形的3条边。

*/float s ,s1 ; /* s1作为面积变量,s 作为中间变量是都应该是实形*/a=3 ; b= 4; c=5 ;s= (a+b+c)/2.0 ;s1= sqrt(s*(s-a)*(s-b)*(s-c)); /* sqrt函数完成开平方根功能。

*/printf(“area=%f\n”,s1);}2第2章程序设计基础知识一、单选题1、C2、A3、C4、A5、C6、C7、D8、C9、D 10、A 11、D 12、A 13、C 14、C 15、B A 16、B 17 D解析:1. 答案:C。

《VISUAL BASIC程序设计基础》习题参考答案

《VISUAL BASIC程序设计基础》习题参考答案

'字体变小
Form1.FontSize = Form1.FontSize - 3
Form1.Cls: Print "欢迎使用 VB"
End Sub
Private Sub Command3_Click()
'字体加粗
Form1.FontBold = True
Form1.Cls: Print "欢迎使用 VB"
Private Sub Form_Load() Text1.Text = "Visual Basic 程序设计"
End Sub Private Sub Form_Resize()
Text1.Top = 0: Text1.Left = 0
Text1.Width = Form1.ScaleWidth/2 '用 Form1.ScaleWidth 效果优于用 Form1. Width
第 2 章 程序设计基础
一、判断题 1.√ 2.× 3.× 4.× 5.√ 6.× 7.√ 8.√ 9.√ 10.×
二、选择题 1.B 2.D 3.A 4.C 5.C 6.B 7.A 8.D 9. C 10.A
三、填空题
1.String 2.4 3."aaa" 4.145 5.6 6.3 7.18 8.False
y = Sqr(x) Else
y=0 End If Print y End Sub
程序 3.界面设计略,过程设计如下: Private Sub Form_Click()
Dim i As Integer, j As Integer For i = 1 To 9
For j = 1 To 9 Print Tab((j - 1) * 4); i * j;

《程序设计基础(C++)》实验教程及完整答案资料

《程序设计基础(C++)》实验教程及完整答案资料

《程序设计基础》实验教程对于从事计算机行业的人员来说,设计能力是最主要的基本功之一。

入门课程《程序设计基础》的学习效果将直接关系到编程能力的掌握和提高以及后续课程的学习。

然而,实践证明,许多初学者在学习这门课程时的效果并不理想。

对初学者来说,如何学好本课程?首先,要理解教材中所给出的语法描述,并学会按语法规定去编写指定问题的求解程序。

经过这样的多次反复,初学者就可以找到编程的感觉。

除了要学好理论知识外,更重要的一点是要到计算机上去验证,因为只有实践才是检验真理的标准。

只有通过到计算机上去实践,才能发现学习中存在的问题,巩固所学知识,加强解决实际问题的能力,增强信心。

因此,《程序设计基础》课程的上机实验是本课程必不可少的实践环节,必须加以重视。

本课程上机实验的目的是使学生熟悉用高级语言解决实际问题的全过程,加深对语言的理解,得到程序设计基本方法和能力的训练。

在独立编写程序、独立上机调试程序的同时,真正能用高级语言这个工具去解决实际问题,对计算机学科的相关知识有所了解,从而为后续课程的学习奠定良好的基础。

本实验指导所用环境是Visual C++ 6.0及以上版本。

考虑到本课程的内容和特点,设置了十四个实验,每次实验需要两至三小时,分别侧重于教材中的一个方面,其中标有“*”号的习题的综合性较强,可供学有余力的学生选择。

实验时也可根据具体情况做适当调整。

虽然可能由于课时和机时限制等原因而不能在实验课时内全部得到安排,但还是建议学生能将其中的每个实验都能认真做一遍,因为这些实验都是学习本课程所必需的。

学生在做实验之前应仔细阅读本实验指导书,初步掌握实验的基本要求和实验方法。

在实验过程中,学生应该有意识的培养自己调试程序的能力,积累发现问题、解决问题的经验,灵活主动的学习。

对于分析运行结果的实验习题,上机前先进行用人工分析,写出运行结果,与上机调试得到的结果进行对照,如有差异,分析其原因。

对于程序编制的实验习题,上机前应考虑出较成熟的编程思路,有意识提供出多种方案,以灵活运用所学知识和技巧。

《C#程序设计基础教程与实训》习题答案

《C#程序设计基础教程与实训》习题答案

附录Ⅰ各章习题答案第1章C#语言概述一、判断题1、√2、×3、√4、×5、√6、√7、×8、×二、选择题1、C2、B3、C4、A5、A6、B7、B8、B三、填空题1、最新的;面向对象2、C和C++;JA V A3、先进设计思想;安全性能4、灵活性5、集成开发环境(IDE)——Visual 6、Microsoft .NET Framework(微软.NET框架体系)7、最基本的通用语言运行时库CLR(Common Language Runtime);一些提供了具体功能的类库8、需要开发和设计的项目文件;应用程序或组件四、简答题1、①简洁易用的语法。

②自动的资源回收机制。

③与Web的紧密结合。

④完整的安全性与错误处理。

⑤版本处理技术。

⑥灵活性和兼容性。

2、C#程序必须包含一个Main方法,Main方法是程序的入口点,程序控制在该方法中开始和结束。

该方法用来执行任务,并在任务完成后返回信息。

第2章常用标准控件一、判断题1、×2、×3、√4、×5、√6、×7、√8、√二、选择题1、A2、C3、B4、D5、A6、B7、B8、D三、填空题1、输入/输出信息2、属性3、事件4、TextAlign5、Click6、文本框(TextBox)7、保证数据标准化8、Show四、简答题1、简述生成控件的操作过程。

(1)单击工具箱中相应的工具按钮,这一按钮呈现被按下状态,表明被选定。

(2)移动鼠标到窗体上,这时鼠标的指针变成十字形,在需要放置控件的左上角位置按下鼠标左键。

(3)在窗体范围内向下向右拖动鼠标,这时窗体上会显示一个矩形框,当其大小合适时,松开鼠标左键,窗体上就会显示一个相应大小的这种控件。

另外一种快捷的方法是在工具箱中相应的工具按钮上双击此按钮,窗体上就会出现一个系统默认大小的所选按钮。

2、消息框有多少种Button参数设置?OK:只显示“确定”按钮OKCancel:显示“确定”和“取消”按钮AbortRetryIgnore:显示“终止”、“重试”和“忽略”按钮YesNoCancel:显示“是”、“否”和“取消”YesNo:显示“是”和“否”RetryCancel:显示“重试”和“取消”第3章数据类型一、填空题1、-2,147,483,648 到2,147,483,6472、单精度;双精度3、164、15、996、2.27、false8、隐式转换;显式转换二、判断题1、√2、×3、×4、√5、×6、×7、×8、×三、选择题1、A2、C3、D4、A5、B6、B7、D8、C四、简答题1.请说明C#标识符命名规则。

Java程序设计基础习题答案

Java程序设计基础习题答案

Java程序设计基础习题答案Java程序设计基础课后习题参考答案第2章1、关于Java Application得入口方法main()得检验:main()方法得参数名就是否可以改变?main()方法得参数个数就是否可以改变?该方法名就是否可以改变?参考答案:(1)main()方法得参数名可以改变.(2)main()方法得参数个数不可以改变。

(3)该方法名不可以改变。

2、当一个程序没有main()方法时,能编译吗?如果能编译,能运行吗?参考答案:当一个程序没有main()方法就是,就是可以编译通过得,但就是不能给运行,因为找不到一个主函数入口。

3、下列语句能否编译通过?bytei =127;bytej = 128;longl1 = 999999;long l2= 9999999999;参考答案:byte i 与long l1可以编译通过。

而byte j 与longl2 超出自身数据类型范围,所以编译失败。

4、下列语句能否编译通过?float f1 =3、5;float f2 = 3.5f;参考答案:java中浮点型得数据在不声明得情况下都就是doubl e型得,如果要表示一个数据就是float型得,必须在数据后面加上“F”或“f”;因此,floatf1 无法编译通过。

5、验证int 与char,int与double等类型就是否可以相互转换。

参考答案:(1)char类型可以转换为int 类型得,但就是int类型无法转换为char类型得;(2)int 可以转换为double类型得,但就是double类型无法转换为int 类型得。

6、计算下列表达式,注意观察运算符优先级规则。

若有表达式就是非法表达式,则指出不合法之处且进行解释。

(1)4+5 == 6*2 ?(2) (4=5)/6??(3)9%2*7/3>17(4)(4+5)<=6/3 ?(5) 4+5%3!=7-2(6)4+5/6〉=10%2参考答案:表达式(2)为不合法表达式,只能将值赋值给一个变量,因此其中(4=5)将5赋值给4就是不合法得.7、下列()就是合法得Java标识符。

《程序设计基础(C++)》实验教程及完整答案

《程序设计基础(C++)》实验教程及完整答案

《程序设计基础(C++)》实验教程及完整答案《程序设计基础》实验教程对于从事计算机行业的人员来说,设计能力是最主要的基本功之一。

入门课程《程序设计基础》的学习效果将直接关系到编程能力的掌握和提高以及后续课程的学习。

然而,实践证明,许多初学者在学习这门课程时的效果并不理想。

对初学者来说,如何学好本课程?首先,要理解教材中所给出的语法描述,并学会按语法规定去编写指定问题的求解程序。

经过这样的多次反复,初学者就可以找到编程的感觉。

除了要学好理论知识外,更重要的一点是要到计算机上去验证,因为只有实践才是检验真理的标准。

只有通过到计算机上去实践,才能发现学习中存在的问题,巩固所学知识,加强解决实际问题的能力,增强信心。

因此,《程序设计基础》课程的上机实验是本课程必不可少的实践环节,必须加以重视。

本课程上机实验的目的是使学生熟悉用高级语言解决实际问题的全过程,加深对语言的理解,得到程序设计基本方法和能力的训练。

在独立编写程序、独立上机调试程序的同时,真正能用高级语言这个工具去解决实际问题,对计算机限的上机时间,有目的的增强调试程序、解决各种实际问题的能力。

每个实验完成后需要写实验报告。

实验0Visual C++ 集成开发环境1. 实验目的要求(1)熟悉和掌握Visual C++ 的集成开发环境(简称为IDE)的部分功能。

(2)熟悉和掌握建立控制台应用程序(3)掌握用IDE编辑、编译和运行简单程序的基本过程。

(4)掌握程序调试的基本方法,包括程序断点的设置与去除,程序的跟踪以及运行期间变量数值的观察。

2. 实验内容(1)了解Visual C++可视化集成开发环境Visual C++是微软公司推出的目前使用极为广泛的基于Windows平台的可视化集成开发环境,它和Visual Basic、Visual Foxpro、Visual J++等其它软件构成了Visual Studio(又名Developer Studio)程序设计软件包。

《C语言程序设计教程》(第三版)李凤霞 主编——第十章习题答案

《C语言程序设计教程》(第三版)李凤霞 主编——第十章习题答案

习题十一、单选题1~5 DDDCC6~10 AABDB11~14 CADC二、填空题1、34 122、ARRAY a,b,c;3、1 34、a c5、(*b).day=? b->day=?5、分析下列程序执行结果。

#include “stdio.h”main(){static struct s1{char c[4],*s;s1={“abc”,”def”};static struct s2{char *cp;struct s1 ss1;}s2={“ghi”,{“jkl”,”mno”}};printf(“%c%c\n”,s1.c[0],*s1.s); /*output ab */printf(“%s%s\n”,s1.c,s1.s); /*output abcdef */printf(“%s%s\n”,s2.cp,s2.ss1.s); /*output ghimno */printf(“%s%s\n”,++s2.cp,++s2.ss1.s); /* output hino */}6、以下程序的功能是:读入一行字符(如:a,...,y,z),按输入时的逆序建立一个链式的结点序列,即先输入的位于链表尾(如下图),然后再按输入的相反顺序输出,并释放全部结点。

#define getnode(type)_________malloc(sizeof(type)) ( (struct node *))main(){struct node{char info;struct node *link;}*top,*p;char c;top=NULL;while((c=getchar())______________) (!='\n'){p=getnode(struct node);p->info=c;p->link=top;top=p;}while(top){_________________; (p=top)top=top->link;putchar(p->info);free(p);}}7、下面的函数将指针p2所指向的线性链表链接到p1所指向的的链表的末端。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第10章习题参考答案
一、选择题
1.编写程序时,不需要了解计算机内部结构的语言是( C )。

A.机器语言B.汇编语言
C.高级语言D.指令系统
2.能够把由高级语言编写的源程序翻译成目标程序的系统软件叫( D )。

A.解释程序B.汇编程序
C.操作系统D.编译程序
3.结构化程序设计主要强调的是( B )。

A.程序的规模B.程序的可读性
C.程序的执行效率D.程序的可移植性
4.在面向对象方法中,一个对象请求另一个对象为其服务的方式是通过发送( D )。

A.调用语句B.命令C.口令D.消息
5.下列程序段的时间复杂度是( A )。

t=i;
i=j;
j=t;
A.O(1) B.O(3) C.O(n) D.O(3n)
6.一位同学用C语言编写了一个程序,编译和连接都通过了,但就是得不到正确结果,那么下列说法正确的是( C )。

A.程序正确,机器有问题B.程序有语法错误
C.程序有逻辑错误D.编译程序有错误
二、填空题
1.程序设计的基本步骤是(分析问题,确定数学模型)、(设计算法,画出流程图)、(选择编程工具,按算法编写程序)、(调试程序,分析输出结果)。

2.用高级语言编写的程序称为(源程序),把翻译后的机器语言程序叫做(目标程序)。

3.结构化程序设计的3种基本逻辑结构为顺序、选择和(循环)。

4.面向对象程序设计以(对象)作为程序的主体。

5.在面向对象方法中,信息隐蔽是通过对象的(封装)性来实现的。

6.在最坏情况下,冒泡排序的比较次数为(n(n-1)/2)。

三、问答题
1.什么是程序?什么是程序设计?
程序是计算机指令的集合,这些指令描述了计算机的一系列操作步骤。

使用计算机解决实际问题,通常是先要对问题进行分析并建立数学模型(对数值计算问题)或提出对数据处理的需求(对非数值计算问题),然后进行算法设计,并用某一种程序设计语言编写程序,最后调试程序,使之运行后能产生预期的结果。

这个过程称为程序设计。

2.什么是算法?它有何特征?如何描述算法?
计算机解决问题的方法和步骤,就是计算机解题的算法。

算法具有5个特性:有穷性、确定性、有效性、一般要有数据输入、要有结果输出。

描述算法有多种不同的工具:自然语言、流程图、结构化流程图和伪代码等。

3.简述冒泡排序、折半查询的基本思想。

冒泡法排序法是每趟将相邻的两个数两两进行比较,若满足排序次序,则进行下一次比较,若不满足排序次序,则交换这两个数,直到最后。

总的比较次数为n-1次,此时最后的
元素为最大数或最小数,此为一趟排序。

接着进行第二趟排序,方法同前,只是这次最后一个元素不再参与比较,比较次数为n-2次,依次类推。

作为折半查找的表必须是顺序存储的有序表,即表采用顺序结构存储,表中的元素按关键字值递增(或递减)排列。

假设表中的关键字值递增排列,则折半查找的实现方法是:首先取整个有序表的中间元素A m的关键字同给定值x比较,若相等,则查找成功;否则,若A m的关键字小于x,则说明待查元素只可能落在表的后半部分中,接着只要在表的后半部分子表中查找即可;若A m的关键字大于x,则说明待查元素只可能落在表的前半部分中,接着只要在表的前半部分子表中查找即可。

这样,经过一次关键字的比较,就缩小一半的查找空间,重复进行下去,直到找到关键字为x的元素,或者表中没有待查元素(此时查找区间为空)为止。

4.在一档电视节目中,有一个猜商品价格的游戏,竟猜者如在规定的时间内大体猜出某种商品的价格,就可获得该件商品。

现有一件商品,其价格在0~8000元之间,采取怎样的策略才能在较短的时间内说出正确(大体上)的答案呢?请设计算法并画出相应的N-S 流程图。

采用折半查找的思路,请自行画出N-S流程图。

5.什么是可视化程序设计?它与面向对象程序设计有何区别和联系?
可视化程序设计利用可视化程序设计语言本身所提供的各种工具构造应用程序的各种界面,使得整个界面设计是在“所见即所得”的可视化状态下完成。

相对于编写代码方式的程序设计而言,可视化程序设计具有直观形象、方便高效等优点。

可视化程序设计也是基于面向对象的思想,但不需通过编写程序代码的方式来定义类或对象,而是直接利用工具箱中提供的大量界面元素(在Visual Basic中称为控件),在设计应用程序界面时,只需利用鼠标把这些控件对象拖动到窗体的适当位置,再设置它们的属性,就可以设计出所需的应用程序界面。

界面设计不需要编写大量代码,底层的一些程序代码由可视化程序设计语言自动生成。

相关文档
最新文档