C语言程序设计(第2版) 刘克威,张凌晓著 习题答案-第八章

最近在复习C语言基础,做这本书的习题.可惜没搜索到答案,就自己做了.
题目用电脑(mac环境下的xcode的c语言测试控制台)敲过的,就会直接给出来,不做标记.(意味着:基本不会错)
如果是自己做的,就会在前面标记一个 * .(意味着:个人水平所限,有可能是错的,嘻嘻,请指教)

1.设有如下定义:

image

若要使p指向data中的a域,正确的赋值语句是___。

A.p=&a;  B.p=data.a;  C.p=&data.a;  D.*p=data.a;
答案:C

2.设有如下定义:

image

下面各输入语句中错误的是___。

A.scanf("%d",&(*p).age);  B.scanf("%s",&std.name);

C.scanf("%c",&std[0].sex);  D.scanf("%c",&(p->sex));

*答案:
这道题我打在电脑上,怎么都不很迷茫

3.有以下程序:

程序运行后的输出结果是___。

A.10  B.11  C.20  D.21
答案:B

4.以下程序的输出结果是___。

image

A.10  B.11  C.51  D.60
答案:C

5.有以下程序:

image

执行后输出结果是___。

A.产生语法错  B.随机值  C.A  D.65
答案:C

6.以下程序的输出结果是___。

image

A.4  B.5  C.6  D.0
答案:D

7.设有如下枚举类型定义:

enum language{Basic=3,Assembly,Ada=100,COBOL,Fortran};

枚举量Fortran的值为___。

A.4  B.7  C.102  D.103

答案:C

8.若要声明一个类型名STP,使得定义语句“STP s;”等价于“char *s;”,以下选项中正确的是___。

A.typedef STP char *s;  B.typedef *char STP;

C.typedef STP char;  D.typedef char STP;
答案:D

9.若有以下说明和定义:

typedef int *INTEGER;

INTEGER p,*q;

以下叙述正确的是___。

A.p是int型变量  B.p是基类型为int的指针变量

C.q是基类型为int的指针变量  D.程序中可用INTEGER代替int类型名
答案:B

10.有以下程序:

image

程序运行后的输出结果是___。

A.10  B.20  C.30  D.40
答案:D

二、填空题

1.已有定义如下:

image

以下语句调用malloc()函数,使指针p指向一个具有struct node类型的动态存储空间,请填空。

p=(struct node *)malloc(_sizeof(struct node)__);

2.下面程序的运行结果是:。

image

答案:在xcode上打印出来是80. 我也不太懂

你可能感兴趣的:(C语言程序设计(第2版) 刘克威,张凌晓著 习题答案-第八章)