四川师范大学试卷
C语言试题(二)
单选题(以下各题只有一个正确答案,请将正确答案的序号填到下面的表格中, 每小题2分,共20分)
1
2
3
4
5
6
7
8
9
10
C语言中最简单的数据类型包括
整型、实型、逻辑型B.整型、实型、字符型
C.整型、字符型、逻辑型D.整型、实型、逻辑型、字符型
在C语言中,合法的长整型常数是
0LB. 12C. 0.054838743 D. 2.1869e10
在C语言中,要求运算数必须是整型的运算符是
TOC \o "1-5" \h \z A. %B. /C.
设 a=4, b=3,c=2, d=1,则有 f = a>b && c>d, f 的值为
A. 4B. 1C. 0D. 2
已知i=3,贝U printf ( %d”,-i++)的输出结果为__
A. -4B. -3C. -2D.以上均不对
若有以下定义和语句:
int w[2][3], (*pw)[3];
pw=w;则对w数组元素非法引用是A. *(w[0]+2)C. pw[0][0]设以下变量均为
pw=w;
则对w数组元素非法引用是
A. *(w[0]+2)
C. pw[0][0]
设以下变量均为
int类型,则下面表达式中值为
(x=y=6, x+y, x+1) (x=6, x+1, y=6, x+y)
A. 1B. 2
若有以下定义:
float x; int a,b;
则正确的switch语句是
A. switch(x)
{ case1.0:pri ntf("*\n");
case2.0:pri ntf("**\n");
C. 3
*(pw+1)[2]
D. *(pw[1]+2)
7的表达式有
(x=y=6, x+y, y+1)
(x=6, y+1, x=y, x+1)
D. 4
B. switch(x)
{ case1,2:pri ntf("*\n"); case3:pri ntf("**\n");
—个
} }
switch (a+b)D. switch (a+b);
{case 1:pri ntf("\n");{ case 1:pri ntf(."*\n");
case 1+2:pri ntf("**\n");case 2:pri ntf("**\n");
} }
若程序中有下面的说明和定义
struct abc
{ int x;char y;} struct abc s1,s2;
则会发生的情况是
A.编译出错B.程序将顺利编译连接执行
C.能顺利通过编译连接但不能执行D.能顺利通过编译但连接出错
设 a=1,b=2, c=4, d=3,则执行表达式f =a>b ? a:c>d ? c:d 后,f 的值为:
A.1B.2C.4D.3
、不定项选择(以下各题有一个或多个正确答案,请将正确答案的序号填到下面的 表格中,每小题2分,共10 分)
1
2
3
4
5
若有说明:int a[][4]={0,0};则下面正确的叙述是
数组a的每个元素均可得到初值0.
二维数组a的第一维大小为1
因为二维数组a中第二维大小的值除以初值的个数为1,故数组a的行数为1
只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值 0
给出以下定义:
char x[ ]="abcdefg";
char y[ ]={'a','b','c','d','e','f,'g'};
则正确的叙述为 __
A.数组x和数组y等价B.数组x和数组y的长度相同
C.数组x的长度大于数组y的长度 D.数组x的长度小于数组y的长度
以下叙述中正确的是_
在C中,函数中的自动变量可以赋初值,每调用一次,赋一次初值.
在C中,在调用函数时,实在参数和对应形参在类型上只需赋值兼容.
在C中,外部变量的隐含类别是自动存储类别.
在C中,函数形参可以说明为register变量.
下面函数的功能是
int fun l(char * x)
{char * y=x;
while(*y++); return(y-x-l);}A.求字符串的长度B.比较两个字符串的大小C.将字符串x复制到字符串yD.将字符串
while(*y++); return(y-x-l);}
A.求字符串的长度
B.比较两个字符串的大小
C.将字符串x复制到字符串yD.将字符串x连接到字符串y后面
5.若有定义:int * pl, * p2, m=5, n;下列能达到m和n变量中的值相等的语句有:
A.p1 = &m; p2= &p1;
C.p1 = &m; p2=p1;
B.p1 = &m; p2=n;* p仁* p2;
D.p1 = &m;* p2= * p1 ;
三、程序填空(每空3分