黑龙江中医药大学往年C语言预测卷

本试卷为黑龙江中医药大学往年C语言预测卷,题目包括:单项选择题,判断题,编程题。

覆盖的内容包括:理论题,基础知识,控制结构,循环结构,指针,数组/指针数组,字符串/字符串指针,函数/函数指针,程序题,结构体,文件。

C语言预测卷

一、单项选择题 (共20题,每题2分,共计40分)

(  A  )
1、在c语言中,存储一个字符型、整型、单精度实型变量所需的空间是________。型、单精度实型变量所需的空间是________。
A、1、2、4
B、1、1、4
C、1、2、8
D、2、2、8
(  C  )
2、有以下程序
main( )
{
char k;
int i;
for(i=1;i<3;i++)
{
scanf("%c",&k);
switch(k)
{
case ‘0’: printf("another\n");
case ‘1’: printf("number\n");
}
}
}
程序运行时,从键盘输入:01<回车>,程序执行后的输出结果是________。
A、another
number
B、another
number
another
C、another
number
number
D、number
number
(  D  )
3、有以下程序段
char ch;
int k;
ch='a';
k=12;
printf("%c,%d,",ch,ch,k);
printf("k=%d\n",k);
已知字符a的ascll十进制代码为97,则执行上述程序段后输出结果是________。
A、因变量类型与格式描述符的类型不匹配输出无定值
B、输出项与格式描述符个数不符,输出为零值或不定值
C、a,97,12k=12
D、a,97,k=12
(  C  )
4、在c语言中,以下一组运算符中,优先级最高的运算符是______。
A、<=
B、=
C、%
D、&&
(  D  )
5、若已定义: int a[]= { 0,1,2,3,4,5,6,7,8,9 },*p=a,i; 其中0≤i≤9,则对a数组元素不正确的引用是________。
A、a[p-a]
B、*(&
C、p
D、a[10]
(  B  )
6、二维数组m[i,j]的元素是4个字符(每个字符占一个存储单元)组成的串,行下标i范围从0到4,列下标,i的范围从0到5。m按行存储时元素m[3,5]的起始地址与m按列存储时元素( )的起始地址相同。
A、M[2,4)
B、M[3,4)
C、M[3,5]
D、M[4,4)
(  A  )
7、下列描述中,符合结构化程序设计风格的是________。
A、使用顺序、选择和重复(循环) 三种基本控制结构表示程序的控制逻辑
B、模块只有一个入口,可以有多个出口
C、注重提高程序的存储效率
D、使用goto语句跳转
(  A  )
8、下列选项中,合法的c语言关键字是________。
A、default
B、get
C、integer
D、VAR
(  B  )
9、下面函数的功能是________。 a(s1,s2) char s1[],s2[]; while(s2++=s1++);
A、字符串比较
B、字符串复制
C、字符串链接
D、字符串反向
(  D  )
10、下列关于boolean类型的叙述中,正确的是________。
A、可以将boolean类型的数值转换为int类型的数值
B、可以将boolean类型的数值转换为字符串
C、可以将boolean类型的数值转换为char类型的数值
D、不能将boolean类型的数值转换为其他基本数据类型
(  A  )
11、有以下程序:
main()
{
char a,b,c,d;
scanf("%c,%c,%d,%d",&a,&b,&c,&d);
printf("%c,%c,%c,%c\n",a,b,c,d);
}
若运行时从键盘上输入:6,5,65,66<回车>,则输出结果是 ______。
A、6,5,A,B
B、6,5,65,66
C、6,5,6,5
D、6,5,6,6
(  B  )
12、语句:printf("%d\n",12&012);
的输出结果是________。
A、12
B、8
C、6
D、012
(  A  )
13、设有如下说明:
typedef struct
{
int n;
char c;
double x;
}
std;
则以下选项:能正确定义结构体数组并赋初值的语句是________。
A、STDtt[2]={{1,'A',62},{2,'B',75}};
B、STDtt[2]={1,"A",62,2,"B",75};
C、struet tt[2]={{1,'A'},{2,'B'}};
D、struct tt[2]={{1,"A",62.5},{2,"B",75.0}};
(  B  )
14、下面程序的运行结果是
#include<stdio.h>
main()
{
char a[]="morning",t;
int i,j=0;
for(i=1;i<7;i++) {
if(a[j]<a[i]) {
j=i;
t=a[j];
a[j]=a[7];
a[7]=a[j];
}
}
printf("%s", a);
}
A、mrgninr
B、m
C、moring
D、morning
(  A  )
15、c 语言中的基本数据类型包括
A、整型、实型、字符型
B、整型、字符型、数组
C、整型、实型、逻辑型
D、整型、实型、结构体
(  D  )
16、关于数组的定义与初始化,下列哪一项是错误的( )
A、int arr[5] = {1,2,3,4,5};
B、int arr[] = {1,2,3,4,5};
C、int arr[5] = { 1,2,3};
D、int arr[5] = {1,2,3,4,5,6};
(  A  )
17、有说明语句int a[4][5]; 则a[2]+3表示__。
A、a数组行下标为2、列下标为3的元素的地址
B、a数组行下标为2、列下标为3的元素的值
C、a数组第2行的首地址
D、a数组第3行的首地址
(  B  )
18、判断式5>4>3 的结果为
A、1
B、0
C、true
D、false
(  B  )
19、执行下面的程序段int x=5;
char z='a';
int b;
b=((x&15)&&(z<'a') );
后,b的值为________。
A、0
B、1
C、2
D、3
(  C  )
20、以下叙述中错误的是________。
A、C语言是一种结构化程序设计语言
B、结构化程序由顺序、分支、循环三种基本结构组成
C、使用三种基本结构构成的程序只能解决简单问题
D、结构化程序设计提倡模块化的设计方法

二、判断题 (共10题,每题2分,共计20分)

(   F  )
1、c语言规定,在一个源程序中,main函数的位置必须在最后。( ) 
(   T  )
2、若不希望其他源文件引用本文件中定义的全局变量,可在定义全局变量时加上static。 
(   F  )
3、continue 不是结束本次循环,而是终止整个循环的执行。 
(   F  )
4、数组定义后,数组名的值是一个地址,可以被修改。 
(   T  )
5、定义二维数组时,如果对全部元素赋初值,则可以省略行数。 
(   F  )
6、强制类型转换时,原来变量的类型会发生改变。 
(   F  )
7、c语言中基本数据类型只有整型、实型和字符型。 
(   T  )
8、一个 c 程序可以包含若干函数, 但必须有主函数。 
(   T  )
9、逻辑表达式的值只能为1或0。 
(   T  )
10、char s=“C Language”;表示s是一个指向字符串的指针变量,把字符串的首地址赋予s 

三、编程题 (共3题,每题0分,共计40分)

1、编写程序:求1-100之间的奇数和及偶数的和。
2、编写程序:利用结构体类型,编程计算一名同学5门课的平均分。
3、编程判断输入的字符串是否为“回文”。所谓“回文”是指顺读和倒读都一样,如abcba。