(42)有以下程序
struct s
{ int x,y; } data[2]={10,100,20,200};
main()
{ struct s *p=data;
printf("%d\n",++(p->x));
}
程序运行后的输出结果是
A.10
B.11
C.20
D.21
(43)有以下程序段
main()
{ int a=5,*b,**c;
c=&b; b=&a;
……
}
程序在执行了c=&b;b=&a;语句后,表达式:**c的值是
A.变量a的地址
B.变量b中的值
C.变量a中的值
D.变量b的地址
(44)有以下程序
#include
main()
{ char str[][20]={"Hello","Beijing"},*p=str;
printf("%d\n",strlen(p+20));
}
程序运行后的输出结果是
A.0
B.5
C.7
D.20
(45)已定义以下函数
fun(char *p2, char *p1)
{ while((*p2=*p1)!='\0'){ p1++;p2++; } }
函数的功能是
A.将p1所指字符串复制到p2所指内存空间
B.将p1所指字符串的地址赋给指针p2
C.对p1和p2两个指针所指字符串进行比较
D.检查p1和p2两个指针所指字符串中是否有'\0'
(46)有以下程序
main()
{ int x=3, y=2, z=1;
printf("%d\n",x/y&~z);
}
程序运行后的输出结果是
A.3
B.2
C.1
D.0
(47)若fp已正确定义并指向某个文件,当未遇到该文件结束标志时函数feof(fp)的值为
A.0
B.1
C.-1
D.一个非0值
(48)下列关于C语言数据文件的叙述中正确的是
A.文件由ASCII码字符序列组成,C语言只能读写文本文件
B.文件由二进制数据序列组成,C语言只能读写二进制文件
C.文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件
D.文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件
(49)有以下程序
main()
{ int a[3][3],*p,i;
p=&a[0][0];
for(i=0;i<9;i++) p[i]=i+1;
printf("%d \n",a[1][2]);
}
程序运行后的输出结果是
A.3
B.6
C.9
D.2
(50)有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向一个链表中的三个连续结点。
struct node
{ int data;
struct node *next;
} *p, *q, *r;
_______________________________
| data next data next data next |
| →□□ → □□ → □□→ |
| ↑p ↑q ↑r |
|______________________________|
现要将q和r所指结点的先后位置交换,同时要保持链表的连续,以下错误的程序段是
A.r->next=q; q->next=r->next; p->next=r;
B.q->next=r->next; p->next=r; r->next=q;
C.p->next=r; q->next=r->next; r->next=q;
(资料来源:东方教育网 http://www.eastedu.com.cn)
D.q->next=r->next; r->next=q; p->next=r;
上一页 [1] [2] [3] [4] [5] [6] [7] 下一页
责任编辑:cyth