程序设计(C)作业三(含答案)_c语言程序设计作业三

2020-02-27 其他范文 下载本文

程序设计(C)作业三(含答案)由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“c语言程序设计作业三”。

第三次作业答案(红字为答案)

1.下列叙述中错误的是()

A.对于double 类型数组,不可直接用数组名对数组进行整体输入或输出 B.数组名代表数组所占存储区的首地址,其值不可变 C.在程序执行过程中,当数组元素下标超出定义的下标范围时,系统将给出“下标”越界的错误提示

D.可以通过赋初值的方式确定数组元素个数 提示:请从数组下标的合法取值范围来考虑。

2.已有定义char a[] = “xyz”,b[]={‘x’, ‘y’, ‘z’},以下叙述正确的是()

A.数组a 和b 的长度相同

B.数组a 的长度小于数组b 的长度

C.数组a 的长度大于数组b 的长度

D.上述说法均不正确 提示:此题考察字符数组长度和字符串长度之间的关系。

3.以下能正确定义一维数组的选项是()

A.int num[];

B.#define N 100 int num[N] C.int num[0..100];D.int N = 100;int num[N];提示:此题考察一维数组的维数界定问题。

4.下列程序的输出结果是()#include void main(){ char a[] = {‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘f’, ‘g’, ‘h’, ‘’};int i, j;i = sizeof(a);j = strlen(a);printf(“%d, %dn”, i, j);} A.9,9 B.8, 9 C.1, 8 D.9,8 提示:此题考察字符数组长度和字符串长度之间的关系。

5.以下不能正确定义二维数组的选项是()

A.int a[2][] = {{1, 2}, {3, 4}};B.int a[][2] = {1, 2, 3, 4};C.int a[2][2] = {{1}, {2}};

D.int a[2][2] = {{1}, 2, 3};提示:此题考察二维数组初始化的规定。

6、C 语言规定,若未对函数返回类型加以说明,则函数的隐含类型为()A.void B.double

C.int

D.char 分析:教材中有答案,但我们不推荐大家在编程时省略函数返回类型。

7、若已定义的函数有返回值,则以下关于该函数调用的叙述错误的是()A.函数调用可以作为独立语句存在 B.函数调用可以作为一个函数的实参 C.函数调用可以出现在表达式中 D.函数调用可以作为左值而被赋值

分析:基本概念题,可查书或上机验证。

8、下列说法中错误的是()

A.在不同的函数中可以使用相同名字的变量 B.函数中的形参是局部变量

C.在一个函数内定义的变量只在本函数范围内有效

D.在一个函数的复合语句中定义的变量只在本函数范围内有效 分析:基本概念题。考察变量的作用域和生命期。

9、下列说法中正确的是()

A.定义函数时,形参的类型说明可以放在函数体内 B.return 后面的值不能为表达式

C.如果函数值类型与return 后的返回值类型不一致,则以函数值类型为准 D.如果形参与实参的类型不一致,则以实参类型为准 分析:基本概念题,可查书或上机验证。

10、阅读下列程序段,其执行结果为()#include void fun(int a){ int x = 5;x += a++;printf(“%d,”, x);}

void main(){ int a = 3, x = 1;fun(a);x += a++;printf(“%dn”, x);} A.8,2 B.8,3 C.8,4D.8,5 分析:考察大家对传值调用和传址调用的理解。

11、阅读下列程序段,其执行结果为()#include void main(){ int a = 4, b = 6, c = 7;double d;double fun(int, int, int);printf(“d = %lfn”, fun(a, b, c));}

double fun(int a, int b, int c){ return a % b * c;} A.27 B.27.000000 C.28 D.28.000000

分析:可上机验证,留意一下函数声明的方式,以及输出语句中对函数返回值的处理。

12、下列说法中不正确的是()

A.C 语言规定,不能在一个函数的内部再定义函数

B.在没有声明函数返回值类型的情况下,默认函数返回值类型为int 型 C.函数的类型可以是整型、实型、字符型,但不能是指针类型 D.函数可以没有形参,但函数名后的括号不能省略 分析:基本概念题。

13、一个变量的指针就是()

A.变量的名称 B.变量的地址

C.变量的类型 D.变量的值 分析:基本概念题。

14.两个指针变量不能()

A.相加

B.相减

C.比较

D.指向同一地址 分析:基本概念题。查书或上机验证。

15.在C 语言中,对变量的访问方式是()

A.能直接访问,也能间接访问

B.能直接访问,不能间接访问 C.不能直接访问,能间接访问

D.直接、间接均不能 分析:基本概念题。

16.C 语句: int(* pa)[5];中,pa 表示的是一个()A.指针数组的名称 B.指向整型变量的指针

C.指向包含5 个整型元素的一维数组的指针 D.指向函数的指针 分析:基本概念题。

17.C 语句int * func();中,func 表示的是()A.返回值为指针的函数名称 B.指向整型变量的指针 C.指向数组的指针 D.指向函数的指针 分析:基本概念题。

18.给定下列程序,假定从键盘输入数据1、2,则执行结果为()#include void swap(int * p1, int p2){ * p1 = * p1 + p2;p2 = p2 + * p1;}

void main(){ int a, b, * p1;scanf(“%d, %d”, &a, &b);p1 = &a;swap(p1, b);printf(“a = %d, b = %dn”, a, b);} A.3,5 B.a = 3, b = 5 C.3, 2 分析:考察传值与传址的区别。

19.给定下列程序,则运行结果为()#include void fun(int x, int y, int * z){ * z = x – y;} void main(){ int a, b, c;fun(11, 5, &a);fun(8, a, &b);fun(a, b, &c);printf(“%d, %d, %dn”, a, b, c);} A.2,4,6 B.2, 6, 4 C.6, 2, 4分析:传址与传值。

20.给定下列程序,则其运行结果为()#include void main()

D.a = 3,b = 2

D.6,4,2 { static int array[][4] = {{1, 3, 5, 7}, {9, 11, 13, 15}, {17, 19 ,21, 23}};int(* p)[4], i, j, sum[3];p = array;for(i = 0;i

sum[i] = 0;

for(j = 0;j

sum[i] += *(*(p + i)+ j);

printf(“%d, ”, sum[i]);} } A.16, 48, 80

B.164880

C.144 D.80 分析:考察用指针变量遍历二维数组的方法。重点在理解,否则考试时不可能有机会上机验证。

《程序设计(C)作业三(含答案).docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
程序设计(C)作业三(含答案)
点击下载文档
相关专题 c语言程序设计作业三 作业 程序设计 含答案 c语言程序设计作业三 作业 程序设计 含答案
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文