C语言专升本考试(习题卷11)
说明:答案和解析在试卷最后
第1部分:单项选择题,共70题,每题只有一个正确答案,多选或少选均不得分。
1.[单选题]以下结构体类型说明和变量定义中正确的是______。
A)typedef struct{int n; char c;} REC;REC t1,t2;
B)struct REC;{int n; char c;};REC t1,t2;
C)typedef struct REC;{int n=0; char c= 'A';}t1,t2;
D)struct{int n; char c;} REC;REC t1,t2;
2.[单选题]程序中若有如下说明和定义语句
Char fun(char *);
Main()
{
Char *s="one",a[5]={0},(*f1)()=fun,ch;
}
以下选项中对函数fun的正确调用语句是______。
A)(*f1)(a);
B)*f1(*s);
C)fun(&a);
D)ch=*f1(s);
3.[单选题]下面描述中,不正确的是_______。
A)C程序的函数体由一系列语句和注释组成
B)注释内容不能单独写在一行上
C)C程序的函数说明部分包括对函数名、函数类型、形式参数等的定义和说明
D)scanf和printf是标准库函数而不是输入和输出语句
4.[单选题]下列语句中,能正确输出26个英文字子母的
A)for(a=’a’; a<=’z’ print("%c”,++a);
B)for(a=’a’; a<=’z’;) print("%c”,a);
C)for(a=’a’; a<=’z’printf(%c”,a++);
D)for(a=’a’; a<=’z” ; printf("%c”,a));
5.[单选题]函数f定义如下,执行语句“sum=f(5)+f(3);”后,sum的值应为( )。int f(int m) { static int i=0; int s=0; for(;i<=m;i++) s+=i; return s;}
A)21
B)16
C)15
D)8
6.[单选题]一个C程序的执行是从( )
A)本程序的main函数开始,到main函数结束
B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C)本程序文件的第一个函数开始,到本程序main函数结束
D)本程序的main函数开始,到本程序文件的最后一个函数结束
7.[单选题]下列程序的输出结果为()。
Main()
{int m=7,n=4;
Float a=38.4,b=6.4,x;
X=m/2+n*a/b+1/2;
Printf("%f\n",x);
}
A)27.000000
B)27.500000
C)28.000000
D)28.500000
8.[单选题]下面四个选项中,均是不合法的用户标识符的选项是()。
A)A P_0 do
B)float la0 _A
C)b-a goto int
D)_123 temp int
9.[单选题]若有定义语句:int a[3][6];,按在内存中的存放顺序,a数组的第10个元素是______。
A)a[0][4]
B)a[1][3]
C)a[0][3]
D)a[1][4]
10.[单选题]下面程序的输出结果是______。
Main( )
{ int a[ ]={1,2,3,4,5,6,7,8,9,0},*p;
P=a;
Printf("%d\n",*(p+9)); }
A)0
B)1
C)10
D)9
11.[单选题]有以下结构体说明、变量定义和赋值语句
Struct STD
{ char name[10];
Int age;
Char sex;
}s[5],*ps;
Ps=&s[0];
则以下scanf函数调用语句中错误引用结构体变量成员的是______。
A)scanf("%s",s[0].name);
B)scanf("%d",&s[0].age);
C)scanf("%c",&(ps->sex));
D)scanf("%d",ps->age);
12.[单选题]C语言中整数8在内存中的存储形式是
A)11111111111111111000
B)1000000000001000
C)0000000000001000
D)11111111111111110111
13.[单选题]若有定义: int a[5]; 则a数组中首元素的地址可以表示为(
A)&a
B)a+1
C)a
D)&a[1]
14.[单选题]若有条件表达式 (exp)?a++:b--,则以下表达式中能完全等价于
表达式(exp)的是()。
A)(exp==0)
B)(exp!=0)
C)(exp==1)
D)(exp!=1)
15.[单选题]设有语句int a=3; 则执行了语句a+=a-=a*a;后,变量a的值是______。
A)3
B)0
C)9
D)-12
16.[单选题]若变量已定义为float类型,要通过以下赋值语句scanf("%f,%f",&a,&b);给a赋值为11,给b赋值为22,以下正确的输入形式是( )。 (2分)
A)1. 11 22
B)1. 11&22
C)1. 11:22
D)1. 11,22
17.[单选题]若输入ab,程序运行结果为()。
Main()
{ static char a[2];
scanf("%s",a);
printf("%c,%c",a[1],a[2]);
}
A)a,b
B)a,
C)b,
D)程序出错
18.[单选题]C语言源程序的基本单位是()。
A)过程
B)函数
C)子程序
D)标识符
19.[单选题]若有说明 int a[3][4];则a数组元素的非法引用是()。
A)a[0][2*1]
B)a[1][3]
C)a[4-2][0]
D)a[0][4]
printf函数的作用是向终端20.[单选题]数组名作为参数时,以下叙述正确的是( )。 (2分)
A)1. 函数调用时是将实参数组的所有元素值传给形参。
B)1. 函数调用时是将实参数组的第一个元素值传给形参。
C)1. 函数调用时是将实参数组的首地址传给形参。
D)1. 函数调用时是将实参数组的所有元素的地址传给形参。
21.[单选题]若有一些定义和语句
#include <stdio.h>
Int a=4,b=3,*p,*q,*w;
P=&a; q=&b; w=q; q=NULL;
则以下选项中错误的语句是______。
A)*q=0;
B)w=p;
C)*p=a;
D)*p=*w;
22.[单选题]若有int a,b,d=241;语句a=d/100%9;b=(-1)&&(-1);执行后a,b的值为( )。 (2分)
A)6,1
B)2,1
C)6,0
D)2,0
23.[单选题]Putchar函数可以向终端输出一个()。
A)整型变量表达式值
B)实型变量值
C)字符串
D)字符或字符型变量值
24.[单选题]若int类型数据占两个字节,则下列语句的输出为()。
Int k=-1; printf("%d,%u\n",k,k);
A)-1,-1
B)-1,32767
C)-1,32768
D)-1,65535
25.[单选题]打开文件时,方式“w”决定了对文件进行的操作是()。
A)只写盘
B)只读盘
C)可读可写盘
D)追加写盘
26.[单选题]以下对局部变量描述错误的是( )。 (2分)
A)1. 在函数内部定义的变量。
B)1. 在程序的全部执行过程中一直占用存储单元。
C)1. 在main函数中定义的变量是局部变量。
D)1. 形式参数也是局部变量。
27.[单选题]执行下面程序后,输出结果是()。
Main()
{ a=45,b=27,c=0;
c=max(a,b);
printf("%d\n",c);
}
Int max(x,y)
int x,y;
{ int z;
if(x>y) z=x;
else z=y;
return(z);
}
A)45
B)27
C)18
D)72
28.[单选题]若y为int型变量,则执行以下语句后,y的值是y=8; y+= y-=y*y;
A)64
B)-56
C)-112
D)-48
29.[单选题]设有如下定义:
Struct ss
{ char name[10];
Int age;
Char sex;
} std[3],*p=std;
下面各输入语句中错误的是______。
A)scanf("%d",&(*p).age);
B)scanf("%s",&std.name);
C)scanf("%c",&std[0].sex);
D)scanf("%c",&(p->sex));
30.[单选题]While(fabs(t)<1e-5)if(!s/10)break;循环结束的条件是()。
A)t>=1e-5&&t<=-1e-5&&s>-10&&s<10
B)fabs(t)<1e-5&&!s/10
C)fabs(t)<1e-5
D)s/10==0
31.[单选题]以下选项中,不能正确赋值的是______。
A)char s1[10];s1="chest";
B)char s2[]={'C','t','e','s','t'};
C)char s3[20]="Chest";
D)char *s4="Chest\n";
32.[单选题]有如下函数调用语句:
Func(rec1,rec2+rec3,(rec4,rec5));
该函数调用语句中,含有的实参个数是______。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。