程序设计基础教材1-5章答案

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

《程序设计基础》习题参考答案与部分解析

第1章 C 语言概述

一、填空

a) C源程序的基本单位是函数。

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

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

二、单选题

1、A

2、C

3、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( )

{

printf(“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章程序设计基础知识

一、单选题

1、C

2、A

3、C

4、A

5、C

6、C

7、D

8、C

9、D 10、A 11、D 12、A 13、C 14、C 15、B A

16、B 17 D

解析:

1. 答案:C。这里考察的是用户标识符的定义。用户标识符

由字母、数字、下划线组成。且必须以字母或下划线开头,区分大小写,且不能与C语言已有的32个关键字同名。由于选择不合法的用户标识符,A项的 A 、P_0、Do都是合法的用户标识符;B项的_A是合法的;D项的_123、temp、INT 也都是合法的。只有C 选项的标识符都是错误的用户标识符。

2.答案:A。这里考察的是整型常量的概念。B项当中01a

不正确,C

项当中的0668不是正确的八进制常量,D项当中的2e5是

float型常量。

3.答案:C。这里考察的是字符常量的定义。字符常量是用单撇号括起来的单个字符或转义字符。所以答案是C。4.答案:A。字符变量只能包含一个字符。

5.答案:C。这里考察的是转义字符的正确表示。C项的‟074‟是错误的转义字符,正确表示方法是‟\074‟。

6.答案:C。字符变量只能包含一个字符,而C项的c=‟yes‟是错误的。

7.答案:D。这里考察的是输入格式的控制。输入格式要与scanf语句中字符串格式相对应。

8.答案:C。这里考察的是输出格式和字符对应的ASCII 码值。‟A‟的ASCII码值是65,‟Y‟字符的ASCII码值是89。9.答案:D。这里考察输入格式和输出结果形式。由于输入格式不正确,所以输出的是不确定值。

10.答案:A。这里考察的是标识符的特点区分大小写,变量sum和变量sUM是两个不同的变量,sum并没有参加运算,所以它的值不边仍然是7。

11.答案:D。%运算符要求两边的运算数必须是整型。12.答案:A。这里考察的是复合赋值运算。a%=b+1;等价与a=a%(b+1);

由于a=10,b=4;所以运算后a的值是0。

13.答案:C。这里考察的是在变量定义类型是进行赋值操

作。要求a,b,c都赋值为5,且为int 类型。只有C正确。

14.答案:C。这里考察的是类型的自动转换,只要有单精度类型或双精度类型参加运算,结果都是double(双精度)类型。

15.答案:B, A。这里考察的是逻辑表达式的运算过程。

表达式1&表达式2 ,若表达式1的值是0的话,结果就是0,表达式2就不参加运算。要注意:赋值表达式的值是左边赋值变量的值。所以答案为B ,A。

16.答案:B。这里考察的是逗号表达式运算过程是从第1个表达式开始运算,然后依次运行到最后一个表达式。逗号表达式的值是最后表达式的值,且注意逗号运算符优先级低于赋值运算符。所以表达式

(a=2,b=5,b++,a+b)运算过程a=2 —> b=5 —> b++ —> a+b=8;结果是8。

17.答案:D。这里考察的是条件表达式的结合性是从右向左。所以

k

是1,然后计算k

二、填空题

1、-32768-32767

2、字母,数字,下划线

3、分号(;)

4、30 ,15

5、18

6、0

7、-264 8、7 9、0

10、1 11、y%2= = 1 12、x

13、0 14、(x>2&&x<3) | | x < -10 15、1

三、编程题

1、编写程序,输入一个长方形的二边长,输出其面积。

解:程序如下

#include “stdio.h”

main( )

{

int a , b , s ; /* a , b 作为长方形的两个边长,s为面积。*/

printf(“请输入两个边长\n”) ;

scanf(“%d%d” , & a , & b) ;

s = a * b ;

printf(“ The area : %d \n “ , s ) ;

}

2、设置半径为r = 2.9 ,编程求圆周长和圆面积

相关文档
最新文档