《C语言程序设计教程》补充习题(7)

2019-04-23 19:27

fun(s);

printf(\}

3. 函数strcmpstr()的功能是对两个字符串进行比较,从左到右判断并返回相同字符的个数,如“abc”和“ebc”,相同字符个数为0(注意:若第一个都不相等,则以后就无需判断),“deg”和“defgh”,相同字符个数为2,请填空。

int strcmpstr(char *s,char *t) { int i=0;

while(*s&&*t&&*s== (1) ) { (2) ;

s++; t++; }

return i; }

五、程序改错题

1.下面程序的功能是将指定数组中的最大数和最小数进行位置互换。如将下面8个数:5,9,1,4,2,8,0,6变成5,0,1,4,2,8,9,6。程序中,最大数与最小数的互换操作通过函数jh()来实现。

#include void jh(int a[],int n)

{ int t,max,min,end,q; end=n; max=min=0;

for(q=1;q

/********found*******/ { if(a[q]>a[max]) max=q; if(a[q]

/*******found*********/ t=max;max=min;min=t; }

main() { int i;

static int a[8]={5,9,1,4,2,8,0,6}; printf(\

for (i=0;i<8;i++) printf(\ printf(\ jh(a,8);

printf(\ for (i=0;i<8;i++)

printf(\ printf(\}

2.以下程序中,fun函数的功能是把数组中所有元素都向前移动一个位置,最前一个元

31

素移到最后面(假设数组长度为10,整数类型)。

#include void fun(int b[ ],int n) { int x,i;

/********found*******/ x=b[1];

for(i=0;i

/*******found*********/ b[i+1]=b[i]; b[n-1] =x; }

main()

{ int a[10],i;

for (i=0;i<10;i++) scanf(\for (i=0;i<10;i++) printf(\ fun(a,10); printf(\

for (i=0;i<10;i++) printf(\}

第8章 结构体、共用体和枚举类型

一、选择题

1.在访问一个结构体元素前,必须( )。 A.定义结构体类型 B.定义结构体变量 C.定义结构体指针 D.a和b 2.给出语句xxx.yyy.zzz=5;下面( )是正确的。 A.结构体zzz嵌套在结构体yyy中 B.结构体yyy嵌套在结构体xxx中 C.结构体xxx嵌套在结构体yyy中 D.结构体xxx嵌套在结构体zzz中

3.如果temp是结构体变量weather的成员,而且已经执行了语句addweath =&weather;那么( )能代表temp。

A.weather*temp B.(*weather).temp C.addweath.temp D.addweath->temp 4.共用体是由( )的成员组成。 A.必须有相同类型 B.必须包含有指针成员 C.允许在内存占有不同大小的空间 D.必须在内存中占有相同大小的空间 5.定义结构体类型时,下列叙述正确的是( )。 A.系统会按成员大小分配每个空间 B.系统会按最大成员大小分配空间 C.系统不会分配空间 D.以上说法均不正确

6.若有定义 union {long i;

32

char m[3]; } r;

请问执行r.i=0x12345678;后r.m[0]= ( )。 A.0x12 B.0x34 C.0x56 D.0x78 7.若有定义 struct s1 {int x; };

struct s2 {int x; float y;

struct s1 *p2; } r,*p1=&r;

下面正确的是( )。 A.*p1.p2.x=3 B.p1.p2.x=3 C.p1->(*p2).x D.p1->x=3;

8.已知结构体类型变量x的初始化值为{\,合适的结构体定义是( )。 A.struct s {int no; int x,y,z;}; B.struct s {char no[2]; int x,y,z;}; C.struct s {int no; float x,y,z;}; D.struct s {char no[2]; float x,y,z;}; 9.若程序中有定义 struct abc {int x; char y; };

abc s1,s2;

则会发生的情况是( )。 A.编译时会有错误 B.链接时会有错误 C.运行时会有错误 D.程序没有错误 10.关于结构体类型的成员类型,下列说法正确的是( )。 A.成员类型必须是基本数据类型 B.每个成员类型必须为同一种 C.成员不可以定义为自身类型的指针 D.以上说法均不正确 11.若有定义 union s {int w,x,y,z; char c[6]; };

请问执行sizeof(union s)=( )? A.2 B.6 C.8 D.14 12.若有定义 typedef struct { int x; } A[10];

33

A a;

下面正确的是( )。 A.a.x=30; B.a[0].x=30; C.a.A[0].x=30; D.A[0].x=20; 13.若有定义 struct s { int x; char y[6]; } s1;

请问正确的赋值是( )。 A.s1.y=\ B.s1->y=\C.strcpy(s1.y, \); D.s1.strcpy(y, \); 14.以下枚举类型名的定义中正确的是( )。 A.emum a={one,two,three}; B.enum a={one=1,two,three}; C.enum a={one=1;two;three}; D.enum a={one;two;three;}; 15.若有结构体变量定义如下: struct student {int num;

char name[20]; char sex; };

struct student stu; struct student *p; p=&stu;

则下面关于结构体成员引用不正确的是( )。 A.stu.num B.p->num C.(*p).num D.*p.num 二、填空题

1.结构体类型是一种自定义的组合类型,其每个元素称为 。 2.定义结构体类型的变量必须先 ,并且在类型名前加保留字。 3.使用结构体中成员变量必须先写上结构体变量名,中间以 分隔。 4.结构体指针是结构体变量的内存地址,保存该指针的变量称为 。 5.链表是以结构体类型表示链中元素,以 表示链的一种线性数据结构。 6.动态链表是通过动态分配函数分配堆空间建立的,使用完后需要 。 7.共用体类型以union保留字开始,其每个成员分配的空间为 方式。 8.位域类型以 开始,其每个成员定义后要指出分配的位数。 9.结构体类型的定义需要以保留字开始,其保留字为 。

10.定义结构体类型的成员允许嵌套,但不允许递归定义,即 。

11.结构体变量可以作为函数的参数和返回值类型,以 方式传递参数。 12.结构体数组是以 为基类型的数组,下标运算可以访问每个结构体元素。 13.链表的第一元由称为链头的指针指向,最后元则指向 。 14.链表与数组相比,比较适合的操作包括 和 。

15.枚举类型以enum开始,它是一种简单类型,其变量取值于后面的 列表。 16.枚举类型可以像整数一样比较大小和加减运算,其第一个列表元素的值默认

34

为 。 三、程序分析题

1.以下程序运行后,y和z的值是多少。 #include union

{unsigned int x; struct

{unsigned char y; unsigned char z; } a2; } a1; main()

{a1.x=0x5678;

printf(\}

四、程序改错题

1.下列定义无法正确使用,请指出定义中的错误并改正。 struct husband {char name[10]; int age;

struct wife spouse; } x;

struct wife {char name[10]; int age;

struct husband spouse; } y;

第9章 文件

一、选择题

1.下列有关C语言文件的叙述,正确的是( )。

A.文件由ASCII码字符系列组成,C语言只能读/写文本文件 B.文件由二进制数据序列组成,C语言只能读/写二进制文件

C.文件由记录序列组成,可按数据的存储形式分为二进制文件和文本文件 D.文件由数据流形式组成,按数据的存储形式分为二进制文件和文本文件2.下列有关C语言中文件的叙述,错误的是( )。 A.C语言中的文本文件以ASCII码形式存储数据 B.C语言中对二进制位的访问速度比文本文件快 C.C语言中随机读/写方式不适用于文本文件 D.C语言中随机读/写方式不适用于二进制文件 3.C语言中标准输入文件是指( )。 A.键盘 B.显示器 C.打印机 D.硬盘 4.C语言中用于关闭文件的库函数是( )。

35


《C语言程序设计教程》补充习题(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《实用语文》第三 册部分教案 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: