东师12春c程序设计(高起专)在线作业2答案
东师12春c程序设计(高起专)在线作业22012春第二次在线作业
试卷总分:100 测试时间:--
一、单选题(共20道试题,共60分。)
1.有以下程序 main() { int a={1,2,3,4,5,6,7,8,9,10}, *p=&a, *q=p+2; printf("%d\n", *p + *q); } 程序运行后的输出结果是()
A. 16
B. 10
C. 8
D. 6
满分:3分
2.定义由n个指向整型数据的指针组成的数组p,其正确的方式为()
A. int p;
B. int (*p);
C. int *p;
D. int (*p)( );
满分:3分
3.下列关于C语言数据文件的叙述中正确的是()
A. 文件由ASCII码字符序列组成,C语言只能读写文本文件
B. 文件由二进制数据序列组成,C语言只能读写二进制文件
C. 文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件
D. 文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件
满分:3分
4.以下程序: #define A 3 #define B(a) (A+1)*a main() { int x; x=3*A+B(7); printf("x=%d\n",x); } 的输出结果为()
A. x=93
B. x=37
C. x=60
D. x=90
满分:3分
5.已知职工记录描述如下, struct worker { int no; char name; char sex; struct { int day; int month; int year;}birth; }; struct worker w; 设变量w中的“生日”是“1993年10月25日”,下列对“生日”的正确赋值方式是()
A. day=25; month=10; year=1993;
B. w.birth.day=25; w.birth.month=10; w.birth.year=1993;
C. w.day=25; w.month=10; w.year=1993;
D. birth.day=25; birth.month=10; birth.year=1993;
满分:3分
6.不能把字符串:Hello!赋给数组b的语句是()
A. char b={'H','e','l','l','o','!'};
B. char b; b="Hello!";
C. char b; strcpy(b,"Hello!");
D. char b="Hello!";
满分:3分
7.下列程序把数组元素中的最大值放入a中, main() { int a={6,8,3,1,5,9,4,2,7,0}; for(i=0;i<10;i++,p++) if( ) *a=*p; printf(“%d\n”,*a); } 则在if语句中的条件表达式应该是()
A. p>a
B. *p>a
C. *p>*a
D. *p>*a
满分:3分
8.以下程序: #define N 2 #define M N+2 #define CUBE(x) (x*x*x) #include "stdio.h" main( ) { int i=M; i=CUBE(i); printf("%d\n",i); } 的输出结果为()
A. 17
B. 64
C. 125
D. 53
满分:3分
9.设有如下定义 char x[]={“abcdefg”}; char y[]={‘a’,’b’,’c’,’d’,’e’,’f’,’g’} ; 则正确的叙述为()
A. 数组x和y等价
B. 数组x和y的长度相同
C. 数组x的长度大于数组y的长度
D. 数组x的长度小于数组y的长度
满分:3分
10.若有以下说明: int a={1,2,3,4,5,6,7,8,9,10},*p=a; 则数值为6的表达式是()
A. *p+6
B. *(p+6)
C. *p+=5
D. p+5
满分:3分
11.在位运算中,操作数每右移一位,其结果相当于()
A. 操作数乘以2
B. 操作数乘以4
C. 操作数除以2
D. 操作数除以4
满分:3分
12.设A为存放整型的一维数组,如果A的首地址为P,那么A中下标为i的元素地址为()
A. P+i*2
B. P+(i-1)*2
C. P+(i-1)
D. P+i
满分:3分
13.有以下程序 main() { int a={1,2,3,4,5,6,7,8,9,10}, *p=&a, *q=p+2; printf("%d\n", *p + *q); } 程序运行后的输出结果是()
A. 16
B. 10
C. 8
D. 6
满分:3分
14.以下程序 main() { char s1=“abc”,s2=“123”; if(strcmp(s1,s2)>0) printf(“%s\n”,s1); else printf(“%s\n”,s2); } 的输出结果是()
A. abc
B. 123
C. abc123
D. 123abc
满分:3分
15.设有说明 int (*ptr)();其中标识符ptr是()
A. 是一个指向整型变量的指针
B. 它是一个指向函数值是int的函数指针
C. 是一个函数名
D. 定义不合法
满分:3分
16.若fp是指向某文件的指针,且已读到文件末尾,则库函数feof(fp)的返回值是()
A. EOF
B. -1
C. 非零值
D. NULL
满分:3分
17.以下程序: main( ) { char s1="country",s2="side"; int i=0,j=0; while(s1!='\0') i++; while(s2!='\0') s1=s2; s1=0; printf("%s\n",s1); } 的输出结果为()
A. side
B. country
C. sidetry
D. countryside
满分:3分
18.以下程序:char str=”hello!”; printf(“%d\n”,strlen(str)); 的输出结果是()
A. 15
B. 14
C. 7
D. 6
满分:3分
19.下列程序把数组元素中的最大值放入a中, main() { int a={6,8,3,1,5,9,4,2,7,0}; for(i=0;i<10;i++,p++) if( ) *a=*p; printf(“%d\n”,*a); } 则在if语句中的条件表达式应该是()
A. p>a
B. *p>a
C. *p>*a
D. *p>*a
满分:3分
20.已知职工记录描述如下, struct worker { int no; char name; char sex; union { int day; int month; int year;}birth; } w; 在Turbo C中,系统为变量w分配字节的空间数目是()
A. 29
B. 20
C. 25
D. 6
满分:3分
二、判断题(共20道试题,共40分。)
1.共用体变量的各个成员所占内存单元的地址相同。
A. 错误
B. 正确
满分:2分
2.允许定义无名结构,但是它只能在定义结构类型时定义一次结构变量。
A. 错误
B. 正确
满分:2分
3.若有定义:char *p(char a);则p是函数名。
A. 错误
B. 正确
满分:2分
4.free函数用来分配存贮空间。
A. 错误
B. 正确
满分:2分
5.C语言中的构造数据类型包括数组、集合和结构体类型。
A. 错误
B. 正确
满分:2分
6.当两个字符串所包含的字符个数相同时,才能比较两个字符串的大小。
A. 错误
B. 正确
满分:2分
7.C语言的数组下标从1开始。
A. 错误
B. 正确
满分:2分
8.当#include后面的文件名用双引号""括起,仅搜索当前目录。
A. 错误
B. 正确
满分:2分
9.在一个函数内的复合语句中定义的变量在本函数范围内有效。
A. 错误
B. 正确
满分:2分
10.宏定义可分为带参数的宏定义和不带参数的宏定义两类。
A. 错误
B. 正确
满分:2分
11.C语言中,变量名用大小写是等价的。
A. 错误
B. 正确
满分:2分
12.C程序是以源程序文件为单位进行编译的。
A. 错误
B. 正确
满分:2分
13.设有变量定义char s[]=”hello”,则strlen(s)的返回值为6。
A. 错误
B. 正确
满分:2分
14.C函数间可以相互调用,但不能调用main()函数。
A. 错误
B. 正确
满分:2分
15.int (*ptr) (),则ptr是一维数组的名字。
A. 错误
B. 正确
满分:2分
16.有数组定义int a={{1},{2,3}};则a的值为0。
A. 错误
B. 正确
满分:2分
17.C语言函数的缺省(默认)类型是void型(空类型)。
A. 错误
B. 正确
满分:2分
18.在程序中定义了一个结构体类型后,可以多次用它来定义具有该类型的变量。
A. 错误
B. 正确
满分:2分
19.puts函数的作用是将一个字符串输出到显示器。
A. 错误
B. 正确
满分:2分
20.联合变量与结构变量的最大区别在于,联合变量的所有成员占用同一段内存,而结构变量的成员占用不同的内存。
A. 错误
B. 正确
满分:2分转载请注明奥鹏作业答案网www.ap5u.com
页:
[1]