77范文网 - 专业文章范例文档资料分享平台

11计算机二级考试C语言选择题(5)

来源:网络收集 时间:2019-06-11 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

{ int a[]={1,2,3,4,5},*p,*q,i; p=a; q=p+4;

for(i=1;i<5;i++) printf(\ A.24334251 B.51423324 C.15243342 D.42332415 51612 下面程序运行结果是( B )。

main( )

{ static char a[]=\ char *p=a,*q=b; int i;

for(i=0;i<=6;i++)

if(*(p+i)==*(q+i)) printf(\ A.geca B.aceg C.bdf D.fdb

51700 若定义如下结构,则能打印出字母M的语句是( B )。 struct person{ char name[9]; int age;};

struct person class[10]={\ A.printf(\C.printf(\51701 以下程序段的运行结果是( D )。 union { int n; char str[2]; }t;

t.n=80; t.str[0]='a'; t.str[1]=0; printf(\ A.80 B.a C.0 D.97

51702一个结构体变量占用的内存大小是( B )。

A.占内存容量最大的成员所需容量 B.各成员所需内存容量之和 C.第一个成员所需内存容量 D.最后一个成员所需内存容量 51703以下程序段的运行结果是( C )。 union { int x; float y; char c; }m,n; m.x=5;m.y=7.5;m.c='A';n.x=8;printf(\ A.5 B.7.5 C.65 D.8 51704若有定义: struct student {int num; char name[8]; char sex;

float score;}stu1;

则变量stu1所占用的内存字节数是( A )。 A.15 B.16 C.8 D.19

51705定义结构体类型变量teach1,不正确的是( D )。 A.struct teacher {int num; struct teacher teach1; B.struct teacher {int num; C.struct

{int num;

D.struct {int num;

int age;

}teach1;

int age;

}teach1;

int age;

};

int age; }teacher;

struct teacher teach1;

51706若有定义:struct student{int num; char sex; int age;}stu1;下列叙述不正确的是

21

( A )。

A.student是结构体类型名 B.struct student是结构体类型名

C.stu1是用户定义的结构体类型变量名 D.num,sex,age都是结构体变量stu1的成员 51707下面程序的运行结果是( A )。 #include

union data { int i; char c; double d; }a[2]; void main() {printf(\ A.16 B.8 C.4 D.2

51708下面程序的运行结果是( B )。

#include

union data {int i; char c; };

struct {char a[2]; int i; union data d; }p; void main() {printf(\ A.5 B.6 C.7 D.8

51709以下C语言共用体类型数据的描述中,正确的是( C )。 A.共用体变量占的内存大小等于所有成员所占的内存大小之和 B.共用体类型不可以出现在结构体类型定义中

C.在定义共用体变量的同时允许对第一个成员的值进行初始化 D.同一共用体中各成员的首地址不相同 51710设有如下语句:

struct stu {int num; int age; };

struct stu s[3]={{101,18},{102,21},{103,19}}; struct stu *p=s;

则下面表达式的值为102的是( B )。

A.(p++)->num B.(*++p).num C.(*p++).num D.*(++p)->num 51711若有下面定义,能打印出字母'L'的语句是( A )。 struct class { char name[8];

int age; };

struct class s[12]={\ A.printf(\C.printf(\51712若有下面定义,对结构体变量成员不正确引用的语句是( A )。 struct pup { char name[20]; int age; int sex; }p[3],*q; q=p;

A.scanf(\C.scanf(\

22

51800 以下程序的输出结果是( A )。 main()

{ printf( \fac(int n) { int s;

if(n==1) return 1; else return n*fac(n-1); }

A.120 B.60 C.6 D.1 51801 若有以下定义:

struct node { int data;

struct node *next; }

struct node *p; 已建立如下图所示的链表:

┌──┬──┐ ┌──┬──┐ ┌──┬──┐ p →│data│next┼ →│data│next┼ →... →│data│NULL│ └──┴──┘ └──┴──┘ └──┴──┘

指针p指向第一个结点,能输出链表所有结点的数据成员data的循环语句是( D )。 A.while(p!=NULL) { printf(\B.while(p) { printf(\C.for( ; p!=NULL; p++) printf(\D.for( ; p; p=p->next) printf(\51802 若有以下定义:

struct node { int data;

struct node *next; }

struct node m,n,k, *head, *p; 已建立如下图所示的链表:

m n k

┌──┬──┐ ┌──┬──┐ ┌──┬──┐ head →│data│next┼ →│data│NULL│ p → │data│next│

└──┴──┘ └──┴──┘ └──┴──┘

指针head指向变量m, m.next指向变量n,p指向变量k,不能把结点k插到m和n之间形成新链表的程序段是( C )。

A.m.next = p; p->next = head->next; B.(*head).next = p; (*p).next = &n; C.head->next = &k; p->next = head->next; D.m.next = &k; k.next = &n; 51803若有以下定义:

struct node { int data;

struct node *next; }

23

struct node *head,*p; 已建立如下图所示的链表: p ↓

┌──┬──┐ ┌──┬──┐ ┌──┬──┐ head → │data│next┼→│data│next┼→... →│data│NULL│ └──┴──┘ └──┴──┘ └──┴──┘ 能删除指针p所指向结点的程序段是( C )。

A.p = p->next; head->next=p->next; free(p); B.free(p); p = p->next; head->next=p->next; C.head->next = p->next; free(p); D.free(p); head->next = p->next; 51804若有以下定义:

struct node { int data;

struct node *next; } *p,*q;

已建立如下图所示的链表:

┌──┬──┐ ┌──┬──┐

... p →│data│next┼→│data│NULL│

└──┴──┘ └──┴──┘

┌──┬──┐ q →│data│next│ └──┴──┘

不能将指针q所指结点连到上图所示链表末尾的语句是( D )。

A.q->next=NULL; p=p->next; p->next=q; B.p=p->next; p->next=q; q->next=NULL; C.p=p->next; q->next=p->next; p->next=q; D.q->next=p->next; p=p->next; p->next=q; 51805若有定义:

struct node { int data;

struct node *next; };

已建立如下图所示的链表:

┌─┬─┐ ┌─┬─┐ ┌─┬─┐ head →│1 │ ┼→│3 │ ┼→ ? →│25│ ┼→NULL └─┴─┘ └─┴─┘ └─┴─┘ 指针head指向链表首结点,以下函数的功能是( B )。 void fun(struct node * head) { struct node * p = head; while(p)

{ printf(\ A.显示并删除单向链表 B.显示单向链表中的第一个结点的数据 C.显示单向链表中的所有数据 D.显示单向链表中除第一个结点外的所有数据 51806若有定义: struct node { int data;

struct node *next;};

24

已建立如下图所示的链表:

┌─┬─┐ ┌─┬─┐ ┌─┬─┐ head →│2 │ ┼→│4 │ ┼→ ? →│28│ ┼→NULL └─┴─┘ └─┴─┘ └─┴─┘ 指针head指向链表首结点,以下函数的功能是( D )。 void fun(struct node * head) { struct node * p = head; while(1) { p = p->next;

printf(\ if(!p) break; } }

/*这里原为p, 应显示单向链表中第二个结点的数据,无答案; 若改为!p后,答案D*/

A.显示单向链表中第一个结点的数据 B.显示单向链表中最后一个结点的数据 C.显示单向链表中的所有数据 D.显示单向链表中除第一个结点外的所有数据

51807若按如下定义,则函数link的功能是( C )。其中head指向链表首结点,整个链表结构如下图:

┌──┬─┐ ┌──┬─┐ ┌──┬──┐ head →│data│ ┼→│data│ ┼ → ?→│data│NULL│ └──┴─┘ └──┴─┘ └──┴──┘

struct node {int data;

struct node *next; };

int link(struct node* head) {int k=1;

struct node *p=head; while(p!=NULL)

{p=p->next; k++; } return k-1; }

A.删除链表head中的一个结点 B.插入一个新元素到链表head中 C.统计链表head中结点的个数 D.创建新链表head

51808 若按如下定义,函数link的功能是( B )。其中head指向链表首结点,整个链表结构如下图:

┌──┬─┐ ┌──┬─┐ ┌──┬──┐ head →│data│ ┼→│data│ ┼→? → │data│NULL│ └──┴─┘ └──┴─┘ └──┴──┘ struct node {int data;

struct node *next; }; void link(struct node* head) {struct node *p=head; while(p!=NULL)

{ if(p->data%2==1) printf(\

25

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库11计算机二级考试C语言选择题(5)在线全文阅读。

11计算机二级考试C语言选择题(5).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/656430.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: