河南中医药大学C语言专升本
本试卷为河南中医药大学C语言专升本,题目包括:单项选择题。
覆盖的内容包括:理论题,基础知识,控制结构,循环结构,指针,数组/指针数组,字符串/字符串指针,函数/函数指针,程序题,结构体,文件。
本卷包括如下题型:
C语言专升本
一、单项选择题 (共50题,每题2分,共计100分)
( A )
1、设有以下定义和语句: char str[20]一"program",*p; p=str: 则以下叙述中正确的是________。
( A )
2、有以下程序:
main()
{
int c=0,k;
for(k=1;k<3;k++)
switch(k)
{
default:c+=k;
case2:c++;
break;
case4:c+=2;
break;
}
printf("%d\n",c);
}
程序运行后的输出结果是________。
( B )
3、c语言允许函数值类型缺省定义,此时该函数值隐含的类型是________.
( D )
4、阅读下面的程序
main()
{
int i,j;
scanf("%3d%2d",&i,&j);
printf("i=%d,j=%d\n",i,j);
}
如果从键盘上输入1234567<回车>,则程序的运行结果是________。
( D )
5、有以下程序
main()
{
int x=3, y=2, z=1;
printf("%d\n",x/y&~z);
}
程序运行后的输出结果是________。
( D )
6、有以下程序
#include <stdio.h>
void fun(int *a, int n)/*fun函数的功能是将a所指数组元数从大到小排序*/
{
int t,i,j;
for(i=o;i<n-1;j++) for(j=j+1;j<n;j++) if(a[i]<a[j])
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
}
main()
{
int c[10]={1,2,3,4,5,6,7,8,9,0} ,i;
fun(c+4,6);
for(i=0;i<10,i++) printf("%d,",c[i]);
}
程序的运行结果是________。
( C )
7、设有定义:char s[81]; int i=0; 以下不能将一行(不超过80个字符)带有空格的字符串正确读入的语句或语句组是________。
( A )
8、下列数据中属于"字符串常量"的是________。
( B )
9、下列引用的定义中,( )是错误的。
( D )
10、下列四个叙述中,正确的是______。
( B )
11、下列四个叙述中,错误的是_______。
( A )
12、若有定义语句:int a=3,b=2,c=1; 以下选项中错误的赋值表达式是______。
( B )
13、c语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是________。
( C )
14、下列关于变量作用域的描述中,不正确的是________。
( A )
15、以下程序段中与语句k=a>b ? (b>c ? 1:0):0; 功能等价的是________。
( B )
16、以下函数调用语句中含有_______个实参。 func((exp1,exp2),(exp3,exp4,exp5));
( D )
17、已有定义:int i,a[10],*p; 则合法的赋值语句是________。
( D )
18、能正确表示逻辑关系"a>=10或a<=0"的c语言表达式是________。
( A )
19、下列叙述中正确的是________。
( A )
20、根据数制的基本概念,下列各进制的整数中,值最大的一个是______。
( C )
21、下列哪个语句是声明一个含有10个string对象的数组 ( )
( B )
22、下列赋值语句错误的是________。
( A )
23、下列不属于c语言关键字的选项是________。
( B )
24、有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b。则不能把结点b连接到结点a之后的语句是________。
struct node
{
char data;
struct node *next;
}
a,b,*p=&a,*q=&b;
( B )
25、下列选项中c语言中不合法的字符串常量的是________。
( A )
26、下列程序的输出结果是________。
#include <stdio.h>
int f(int a,int b);
main()
{
int i=2,p,j,k;
j=i;
k=++i;
p=f(j,k);
printf("%d",p);
}
int f(int a,int b)
{
int c;
if(a>b)c=1;
else if(a==b) c=0;
else c=-1;
return(c);
}
( C )
27、有以下程序:
main()
{
char str[]="xyz", *ps=str;
while(*ps) ps++;
for(ps--;ps-str>=o;ps--) puts(ps);
}
执行后的输出结果是________。
( D )
28、若有说明语句 char a[ ]="it is mine"; char *p="it is mine"; 则以下不正确的叙述是________。
( D )
29、程序设计语言中________。
( C )
30、已有文本文件t.txt,其中的内容为:student!。以下程序中,文件t.txt已正确为"读"而打开,由文件指针fr指向该文件,则程序的输出结果是___________。
#include <stdio.h>
main()
{
file *fr;
char s[80];
……fgets(s,5,fr);
printf("%s\n",s);
fclose(fr);
}
( B )
31、若有说明:inta,b=2,*p=&a; 则能完成a=b赋值功能的语句是______。
( D )
32、若程序中已包含头文件stdio.h,以下选项中,正确运用指针变量的程序段是______。
( D )
33、有以下程序
#include <stdio.h>
main()
{
struct stu
{
char name[9];
char sex;
double score[2];
}
;
struct stu a={"zhao",'m',85.0,90.0},b={"qian",'f',95.0,92.0};
b=a;
printf("%s,%c,%2.0f,%2.0f\n",b.name,b.sex,b.score[0],b.score[1]);
}
程序的运行结果是______。
( D )
34、设int x=10, a=0, b=25; 条件表达式x<1?a+10︰b的值是________。
( D )
35、对于64位系统,int类型能够表示的数的范围为
( B )
36、若变量已正确定义:for(x=0,y=0;(y!=99&&x<4);x++) 则以上 for 循环()
( A )
37、以下叙述中正确的是________。
( B )
38、设有如下函数定义:若执行调用语句:n=fun(3); 则函数 fun 总被调用次数为________。
( B )
39、以下说法正确的是________。
( C )
40、以下叙述中正确的是________。
( D )
41、有以下程序
main()
{
int k=5,n=0;
while(k>0)
{
switch(k)
{
default : break;
case 1 : n+=k;
case 2 :
case 3 : n+=k;
}
k--;
}
printf("%d\n",n);
}
程序运行后的输出结果是________。
( C )
42、以下程序段的执行结果是________。 double x; x=218.82631; printf("%-6.2e\n",x);
( A )
43、若有int *p=(int *)malloc(sizeof(int)); 则向内存申请到内存 空间存入整数123的语句为________。
( C )
44、以下程序的执行结果是_______.
main()
{
int num = 0;
while( num <= 2 )
{
num++;
printf( "%d,",num );
}
}
( B )
45、有以下程序
struct stu
{
char num[10];
float score[3];
};
main( )
{
struct stu s[3]={{"20021",90,95,85},{"20022",95,80,75},{"20023",100,95,90}},*p;
int i;
float sum=0;
p=s;
for(i=0;i<3;i++)sum=sum+p->score[i];
printf("%.2f\n",sum);
}
程序运行后的输出结果是________。
( B )
46、以下程序的输出结果是________。 。
main()
{
int x=1,y=0,a=1,b=1;
switch(x)
{
case 1:switch(y)
{
case 0:a++;
break;
case 1:b++;
break;
}
case 2:a++;
b++;
break;
}
printf("%d,%d\n",a,b);
}
( B )
47、执行下面的程序段int x=5; char z='a'; int b; b=((x&15)&&(z<'a') ); 后,b的值为________。
( A )
48、main()
{int x=1,a=0,b=0;
switch (x)
{ case 0: b++;
case 1: a++;
case 2: a++;b++;}
printf("a=%d,b=%d",a,b);}
该程序的输出结果是( )
( D )
49、若调用 fputc 函数输出字符成功,则其返回值是()。
( A )
50、以下叙述中错误的是
相关标签:
- C语言
- 河南中医药大学
- 专升本