1. 执行以下程序后,a,b的值分别为 main() { int a,b,k=4,m=6,*p1=&k,*p2=&m; a=p1==&m; b=(*p1)/(*p2)+7; printf("a=%d\n",a); printf("b=%d\n",b); }
A. -1,5
B. 1,6
C. 0,7
D. 4,10
正确资料:C 满分:4 分
2. 以下不正确的定义语句是
A. double x[5]={2.0,4.0,6.0,8.0,10.0};
B. int y[5]={0,1,3,5,7,9};
C. char c1[]={′1′,′2′,′3′,′4′,′5′};
D. char c2[]={′\x10′,′\xa′,′\x8′};
正确资料:B 满分:4 分
3. 设有以下说明语句 struct ex { int x ; float y; char z ;} example; 则下面的叙述中不正确的是
A. struct结构体类型的关键字
B. example是结构体类型名
C. x,y,z都是结构体成员名
D. struct ex是结构体类型名
正确资料:B 满分:4 分
4. 以下程序有错,错误原因是 main() { int *p,i;char *q,ch; p=&i; q=&ch; *p=40; *p=*q; ...... }
A. p和q的类型不一致,不能执行*p=*q;语句
B. *p中存放的是地址值,因此不能执行*p=40;语句
C. q没有指向具体的存储单元,所以*q没有实际意义
D. q虽然指向了具体的存储单元,但该单元中没有确定的值,所以执行*p=*q;没有意义,可能会影响后面语句的执行结果
正确资料:D 满分:4 分
5. 下面能正确进行字符串赋值操作的是
A. char s[5]={"ABCDE"};
B. char s[5]={ ′A′, ′B′, ′C′, ′D′, ′E′};
C. char *s;s="ABCDE";
D. char *s;char a; scanf("%s",&s);
正确资料:C 满分:4 分
6. 有以下程序: #include union pw { int i; char ch[2];}a; main() {a.ch[0]=13;a.ch[1]=0;printf("%d\n",a.i);} 程序的输出结果是
A. 13
B. 14
C. 208
D. 209
正确资料:A 满分:4 分
7. 有如下程序 int a[10]={1,2,3,4,5,6,7,8,9,10}; int *p=&a[3],b;b=p[5]; 则b的值是
A. 5
B. 6
C. 9
D. 8
正确资料:C 满分:4 分
8. 若已定义: int a[]={0,1,2,3,4,5,6,7,8,9}, *p=a,i; 其中 0≤i≤9, 则对a数组元素不正确的引用是
A. a[p-a]
B. *(&a[i])
C. p[i]
D. a[10]
正确资料:D 满分:4 分
9. 函数 rewind 的作用是
A. 使文件位置指针重新返回文件的开始位置
B. 将文件位置指针指向文件中所要求的特定位置
C. 使文件位置指针指向文件的末尾
D. 使文件位置指针自动移至下一个字符位置
正确资料:A 满分:4 分
10. 以下程序有语法错误,有关错误原因的正确说法是 main() { int G=5,k; void prt_char(); ... k=prt_char(G); ... }
A. 语句 void prt_char();有错,它是函数调用语句,不能用void说明
B. 变量名不能使用大写字母
C. 函数说明和函数调用语句之间有矛盾
D. 函数名不能使用下划线
正确资料:C 满分:4 分 |