|
C程序设计16秋在线作业1
一、单选题:
1.以下程序 #define P 3 #define F(x) P*x*x main( ) { printf("%d\n",F(3+5)); } 的输出结果是( ) (满分:3)
A. 192
B. 29
C. 25
D. 编译出错
2.C语言中用于结构化程序设计的三种基本结构是( ) (满分:3)
A. 顺序结构、选择结构、循环结构
B. if、switch、break
C. for、while、do-while
D. if、for、continue
3.以下程序: main( ) { int a=5,b=4,c=6,d; printf("%d\n",d=a>b?(a>c?a:c):(b)); } 的输出结果是( ) (满分:3)
A. 5
B. 4
C. 6
D. 不确定
4.有以下程序fun(int a, int b) { if(a>b) return(a); else return(b); } main( ) { int x=3, y=8, z=6, r; r=fun(fun(x,y), 2*z); printf("%d\n", r); } 程序运行后的输出结果是( ) (满分:3)
A. 3
B. 6
C. 8
D. 12
5.以下不能正确定义二维数组的语句是( ) (满分:3)
A. int a[2][2]={{1}
{2}};
B. int a[][2]={1
2
3
4};
C. int a[2][2]={{1}
2
3};
D. int a[2][]={{1
2}
{3
4}};
6.以下程序: main( ){ char s1[40]="country",s2[20]="side";int i=0,j=0; while(s1[i]!='\0') i++; while(s2[j]!='\0') s1[i++]=s2[j++];s1[i]=0; printf("%s\n",s1); }的输出结果为( ) (满分:3)
A. side
B. country
C. sidetry
D. countryside
7.设a=-3;执行(a>0)?a:-a;后,a的值为( ) (满分:3)
A. 3
B. 1
C. 0
D. -3
8.设有如下定义: char *aa[2]={"abcd","ABCD"}; 则以下说法中正确的是( ) (满分:3)
A. aa数组成元素的值分别是"abcd"和ABCD"
B. aa是指针变量
它指向含有两个数组元素的字符型一维数组
C. aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址
D. aa数组的两个元素中各自存放了字符'a'和'A'的地址
9.要定义一个数组a是一个具有3个元素的指针数组,它的定义语句格式是( ) (满分:3)
A. int(*a)[3]
B. int *a[2]
C. int *a[3]
D. 以上写法都不对
10.以下程序运行后, int func(char *str) { int num=0; while(*(str+num)!='\0') num++; return(num); } main( ) { char str[10],*p=str; gets(p); printf("%d\n",func(p)); }如果从键盘上输入ABCDE,则输出结果为( ) (满分:3)
A. 8
B. 7
C. 6
D. 5
11.若已定义:int a[9], *p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式为( ) (满分:3)
A. p+1
B.
C. a+1
D. a++
E. ++p
12.设有定义:int a=2,b=3,c=4;,则以下选项中值为0的表达式是( ) (满分:3)
A.(!a= =1)&&(!b= =0)
B.(a<b)&& c
C. a && b
D. a( )(b+b)&&(c-a)
13.若已定义int a[10],*p=a;不能表示a[1]地址的表达式是( ) (满分:3)
A. p+1
B. a+1
C. a++
D. ++p
14.C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是( ) (满分:3)
A. void
B. int
C. float
D. double
15.文件存贮在( ) (满分:3)
A. 内存
B. 外存
C. 寄存器
D. CPU
16.有如下定义, struct{ int n; char a[10]; float m;}x; 变量x占的字节数是( ) (满分:3)
A. 10
B. 8
C. 14
D. 16
17.下列程序段: char s1[10]=”12345”,s2[10]=”abc”,s3[]=”67”;strcpy(s1,s2);strcat(s1,s3);puts(s1);的运行结果是( ) (满分:3)
A. abc67
B. abc4567
C. abc 567
D. abc567
18.以下关于函数的叙述中正确的是( ) (满分:3)
A. 每个函数都可以被其它函数调用(包括main函数)
B. 每个函数都可以被单独编译
C. 每个函数都可以单独运行
D. 在一个函数内部可以定义另一个函数
19.以下程序: fun(int x, int y, int z) { z=x*x+y*y; } main( ) { int a=31; fun(5,2,a); printf(“%d”,a); } 程序的输出结果是( ) (满分:3)
A. 0
B. 29
C. 31
D. 无定值
20.下列函数: int fun1(chat* x) {char*y=x; while(*y++); return(y-x-1);} 的功能是 ( ) (满分:3)
A. 求字符串的长度
B. 比较两个字符串的大小
C. 将字符串x复制到字符串y
D. 将字符串X连接到字符串Y后面
三、判断题:
1.C程序由函数构成,函数又是由语句构成的。 (满分:2)
A. 错误
B. 正确
2.用fopen("file","r+");打开的文件"file"可以进行修改。 (满分:2)
A. 错误
B. 正确
3.当#include后面的文件名用双引号""括起,仅搜索当前目录。 (满分:2)
A. 错误
B. 正确
4.在不同的函数中可以使用相同名字的变量。 (满分:2)
A. 错误
B. 正确
5.构成数组的各个元素可以有不同的数据类型。 (满分:2)
A. 错误
B. 正确
6.共用体变量的各个成员所占内存单元的地址相同。 (满分:2)
A. 错误
B. 正确
7.2ab是C语言的合法标识符。 (满分:2)
A. 错误
B. 正确
8.表达式 0195 是一个八进制整数。 (满分:2)
A. 错误
B. 正确
9.C 语言源程序文件通过了编译、连接之后 , 生成一个后缀为 .EXE 的文件。 (满分:2)
A. 错误
B. 正确
10.表达式中的运算对象可以是常数、变量和函数调用。 (满分:2)
A. 错误
B. 正确
11.在C语言中,八进制数是用英文字母o后加一个整数来表示,例如o123。 (满分:2)
A. 错误
B. 正确
12.表达式y=(13>14?15:16)的值为15。 (满分:2)
A. 错误
B. 正确
13.在C语言中对文件操作必须先关闭当前文件,然后再打开一个新文件。 (满分:2)
A. 错误
B. 正确
14.C语言的所有循环语句都要求至少要执行一次循环体。 (满分:2)
A. 错误
B. 正确
15.函数的实参个数可以多于形参的个数。 (满分:2)
A. 错误
B. 正确
16.C语言的数组下标从1开始。 (满分:2)
A. 错误
B. 正确
17.表达式1/4+2.75的值是3。 (满分:2)
A. 错误
B. 正确
18.函数的函数体可以为空。 (满分:2)
A. 错误
B. 正确
19.通过return语句,函数可以带回一个或一个以上的返回值。 (满分:2)
A. 错误
B. 正确
20.用scanf可以从键盘上读入一个含有空格的字符串。 (满分:2)
A. 错误
B. 正确
|
|