教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 实用模板 >

[G]福建省C语言二级考试选择+填空+程序填空+输出结(12)

来源:网络收集 时间:2026-08-23
导读: 51807若按如下定义,则函数link的功能是( C )。其中head指向链表首结点,整个链表结构如下图: head →│data│ ┼→│data│ ┼ → ?→│data│NULL│ struct node {int data; struct node *next; }; int link(s

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(\\p->data); p=p->next; } }

A. 计算链表head中结点的个数 B. 遍历链表head,输出表中值为奇数的元素 C. 删除链表head中的所有结点 D. 插入一个新元素到链表head中

51809以下程序的输出结果是( B )。 #include #include typedef struct node {int data; struct node *next; }Node; Node

list[4]={{4,&list[1]},{3,&list[2]},{2,&list[3]},{1,0}}; void output(Node *head) {Node *p=head; while(p!=NULL) {printf(\\p->data); p=p->next; } } void main() {output(list); }

A. 1 2 3 4 B. 4 3 2 1 C. 3 2 1 4 D. 2 1 3 4

51810若按以下定义: struct node {int data; struct node *next; } *head, *p; 并已建立如下图所示的链表结构,指针p和q分别指向图中所示结点: p↓ q↓

... →│data│next┼→│data│NULL│ │data│ │ 则可以将指针q所指的结点连接到链表末尾的程序段是( A )。

A. q->next=NULL; p=p->next; p->next=q; B. q->next=p->next; p=p->next; p->next=q; C.p=p->next; q->next=p; p->next=q; D.(*q).next=(*p).next; p=(*p).next; (*p).next=q;

51811若有定义: struct node {int data; struct node *next; }; float link(struct

node *head) {int m=0,n=0; struct node *p=head; while(p!=NULL) {m+=p->data; n++; p=p->next; } if(n>0) return 1.0*m/n; else return 0 } 调用link函数时head是指向链表首结点的指针,整个链表结构如下图: head →│data│next┼→│data│next┼→...─→│data│NULL│ 则函数link()的功能是( B )。

A. 统计链表head中结点的个数 B. 遍历链表head, 计算表中各结点成员data的平均值 C.遍历链表head,计算表中各结点成员data的总和 D.创建一个新链表head

51812若有以下定义: struct node {int data; struct node *next; } *p,*q,*t; 指针p、t和q分别指向图中所示结点:

p↓ t↓ q↓

│data│next┼→│data│next┼→│data│next┼→... 现要将t和q所指结点的先后位置交换,同时要保持链表的连续,以下错误的程序段是( C ) A. t->next=q->next;p->next=q;q->next=t; B. p->next=q;t->next=q->next;q->next=t; C.q->next=t;t->next=q->next;p->next=q; D.t->next=q->next;q->next=t;p->next=q; 51813下列程序段运行后,表达式( B )的值为3。 struct point { int x; int y; } *p; struct point a[3]={1,2,3,4,5,6}; p=a; A. *(p+2) B. p[1].x C.p[2].x D.p[3].x

51814若有定义:int a[10]={0,1,2,3,4,5,6,7,8,9}, *p=a; , 则( D )表达式是错误的。 A. a[2] B. p++ C.p[2] D.a++

51815下列程序段运行后,( C )对数组a元素的引用是错误的。(其中0≤i<4,0≤j<3) int i,j,(*p)[3]; int a[][3]={1,2,3,4,5,6,7,8,9,10,11,12}; p = a; A. *(*(a+i)+j) B. p[i][j] C.*(*(p+i)[j]) D.*(p[i]+j)

51816若有定义:int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12},(*p)[4];p=a; ,( A )对数组a元素的引用是正确的。

A. *(p[2]+3) B. **(p+4) C.*(p[4]) D.(**p)[2] 51817( B )能正确定义一个指向函数的指针。

A. int *p() B. int (*p)() C.(int *)p() D.int (*p()) 51818以下程序的运行结果是( A )。 main()

{ int a[3]={1,2,3}; int *num[3]; int **p,i;

for(i=0;i<3;i++) num[i]=&a[i]; p=num;

printf(\ }

A. 1 B. 3 C.&a[0] D.num

51900以下程序中的循环执行了( C )次。 #define N 2 #define M N+1

#define NUM (M+1)*M/2 main()

{ int i,n=0;

for(i=0;i

A. 5 B. 6 C. 8 D. 9

51901错误的枚举类型定义语句是( B )。 A. enum car {A, B, C}; B. enum car {1, 2, 3};

C.enum car {X=0, Y=5, Z=9}; D.enum car {D=3, E, F};

51902假定已有如下定义: int k ;

enum colors {red, green, blue, pink} ;

int a[3]; ( B )是对以下语句是否符合语法规则的正确判断。 a[red]=pink; /* 语句1 */ red=1; /* 语句2 */ k=green+blue; /* 语句3 */

A. 语句1和语句2正确,语句3错误 B. 语句1和语句3正确,语句2错误 C. 语句2和语句3正确,语句1错误 D. 语句1正确,语句2和语句3错误 51904在对无符号数的位运算中,操作数左移三位相当于( D )。

A. 操作数除以6 B. 操作数乘以6 C.操作数除以8 D.操作数乘以8 51905以下程序段运行后变量k的值为( D )。 int m=7,n=2,k; k=(m^n)<<1; A. 0 B. 98 C.20 D.10

51906若有定义:int m=7,n=10,k; 则执行语句k=m&n;后k的值为( A )。 A. 2 B. 1 C.17 D.15

51907以下程序的输出结果为( B )。

#include void main() {enum Weekday{sun=7,mon=1,tue,wed,thu,fri,sat}; enum Weekday day=wed; printf(\ } A. 2 B. 3 C.4 D.5

51908若按如下类型说明,则( B )是错误的叙述。

typedef struct {int no; char *name; int cj; }S,*p; A. S是一个结构体类型名 B. p是一个结构体类型名

C.p是指向结构体类型S的指针类型名 D.no是结构体类型S的成员

51909下面程序段的运行结果是( A )。 int p=7,q=4; printf(\ A. 4 B. 5 C.6 D.7

51910若有以下类型说明,则叙述错误的是( C )。

typedef union {char name[10]; int age; }ustu,*umy;

A. umy是指向共用体类型ustu的指针类型名 B. ustu是一个共用体类型名 C.umy是一个共用体类型名 D.age是共用体类型ustu的成员 51911定义枚举类型的关键字 …… 此处隐藏:3809字,全部文档内容请下载后查看。喜欢就下载吧 ……

[G]福建省C语言二级考试选择+填空+程序填空+输出结(12).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/519410.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)