盐城工学院2023年计算机C语言专升本

本试卷为盐城工学院2023年计算机C语言专升本,题目包括:单项选择题,填空题,编程题。

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

计算机C语言专升本

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

(  C  )
1、设a、b、e、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值是________。
A、0
B、1
C、2
D、3
(  B  )
2、若二维数组a有m列,则在a[i][j]前的元素个数为( )。
A、i*m+j-1
B、i*m+j
C、j*m+i
D、i*m+j+1
(  C  )
3、以下叙述正确的是________。
A、C语言程序将从源程序中第一个函数开始执行
B、可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
C、C语言规定必须用min作为主函数名,程序将从开始执行,在此结束
D、min可作为用户标识符,用以命名任意一个函数作为主函数
(  B  )
4、若有以下定义和语句:int a[10]={1,2,3,4,5,6,7,8,9,10 },*ia=a; 则不能正确表示a数组元素的表达式是 ______。
A、*ia
B、a[10]
C、*a
D、a[ia-a]
(  A  )
5、下列语句中,可以作为无限循环语句的是________。
A、for(;;)
B、for(int i=0;i<10000;i++)
C、while(false)
D、do)while(false)
(  D  )
6、以下关于常量的叙述中,不正确的是______。
A、常量可以表示一个具体的、不变的值
B、常量是指固定不变的值
C、不同类型的常量书写格式不同
D、不同类型的常量书写格式相同
(  B  )
7、下列关于串的叙述中,哪一条是正确的( )
A、串是由至少1个字符组成的有限序列
B、串中字符的数目就是串的长度
C、空串就是由空格构成的串
D、串只能顺序存储
(  A  )
8、下列对字符数组进行初始化的语句正确的是________。
A、char a []="Hello";
B、char a[][]={'H','e','1','1','o');
C、char a[5]="Hello";
D、char a[2][5]={"Hello", "World"};p
(  A  )
9、以下不合法的字符常量是________。
A、'\018'
B、'\'"
C、'\\'
D、'\xcc'
(  A  )
10、以下是正确 c 语言标识符的是________。
A、_3
B、#3
C、&3
D、-3
(  B  )
11、有如下程序段int *p,a=1,b=2; p=&b; a=*p+a; 执行该程序段后,a的值为______。
A、2
B、3
C、4
D、编译出错
(  B  )
12、设有定义:double x; 则以下能够正确输入变量x值的语句是______。
A、scanf("x=%f",&x);
B、scanf("x=%lf",&x);
C、scanf("x=%f",x);
D、scanf("x=%LF",&x);
(  D  )
13、若有下面的说明和定义,则sizeof(struct aa)的值是______。
struct aa
{
int r1;
double r2;
float r3;
}
maya;
A、20
B、18
C、14
D、16
(  D  )
14、若有int x=1;
,执行下列程序段后,变量x的正确结果是________。
switch (x*10)
{
case 9: x+=1;
break;
case 10: x+=1;
case 11: x+=1;
default: x+=1;
}
A、1
B、2
C、3
D、4
(  D  )
15、表达式 *((int *)(p+1)+2)的值时_______.
static struct
{
int x, y[3];
}
a[3] = {{1,2,3,4},{5,6,7,8},{9,10,11,12}}, *p;
p = a+1;
A、3
B、7
C、10
D、11
(  B  )
16、c语言源程序的基本单位是________。
A、过程
B、函数
C、子程序
D、标识符
(  B  )
17、相同结构体类型的变量之间,可以________。
A、相加
B、赋值
C、比较大小
D、地址相同
(  D  )
18、下面说法中错误的是________。
A、共用体变量的地址和它各成员的地址都是同一地址
B、共用体内的成员可以是结构变量,反之亦然
C、在任一时刻,共用体变量的各成员只有一个有效
D、函数可以返回一个共用体变量
(  D  )
19、以下程序的执行结果是________。
main()
{
int w = 1, x = 2, y = 3, z = 4;
w =( w < x ) ? x : w;
w =( w < y ) ? y : w;
w =( w < z ) ? z : w;
printf( "%d " , w );
}
A、1
B、2
C、3
D、4
(  C  )
20、执行下列程序后,其输出结果是()。
void main()
{
int a = 9;
a += a -= a + a;
printf("%d\n", a);
}
A、18
B、9
C、-18
D、-9

二、填空题 (共10题,每题2分,共计20分)

1、在c语言中,二维数组元素在内存的存放顺序是________.
2、若有语句double x=17; int y; ,当执行y=(int)(x/5)%2;之后y的值是 ________。
3、在c语言中,在调用一个函数的过程中又出现__________或间接地调用该函数本身,这一现象称为函数的递归调用。
4、设x=0,y=2,则表达式"!x+y"的值是_____________。
5、下列程序段的运行结果是________。
char s1[20]="abcdef", s2[5]="abc";
strcpy(s1,s2);
printf("%c", s1[4]);
6、若有定义:
float x=3.5;
int z=8;
则表达式 x+z%3/4 的值为________。
7、下列程序段的运行结果是________。
main()
{
int m=1,t=1;
for( ; ; )
{
m=m+t ;
t++;
if(m>9) break ;
}
printf("%d\n",m);
}
8、语句只能用在循环中,该语句的作用是结束本层本次循环,继续一下次循环,前不跳出循环。
9、鸡兔同笼,头30,脚90,下面程序段计算鸡兔各有多少只。请分析程序填空。for(x=1;x<=30;x++ )
{
y=30-x;
if( 【1】________) printf("%d,%d",x,y);
}
10、在C语言中的实型变量分为两种类型,它们是 ___和浮点型。

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

1、编写程序: 输入某年某月某日,判断这一天是这一年的第几天?
2、有以下类信息,使用结构体数组存储这些信息
struct class{
int id;//类编号
char info[20]; //类信息
}a[5]={{1,"aaa"},{2,"bbb"},{6,"ccc"},{7,"ddd"},{4,"eee"}};
从键盘输入一个类编号,如果有该类,删除该类信息,并输出删除
后剩余类信息;如果没有,全部输出。
【输出形式】分行输出数据,每行数据均使用一个空格分隔
【输入样例】1
【输出样例】每行数据均使用一个空格分隔,分行输出
2 bbb
6 ccc
7 ddd
4 eee
3、有一篇文章,共有多行文字(不超过10行), 最后一行为end。要求分别统计出其中英文大写字母、小写字母、空格以及其它字符的个数。统计结果不包括最后一行的end。
相关标签:
  • C语言
  • 盐城工学院
  • 专升本