绍兴文理学院2023年C语言程序设计专升本模拟
本试卷为绍兴文理学院2023年C语言程序设计专升本模拟,题目包括:单项选择题,判断题,填空题,程序分析题,编程题。
覆盖的内容包括:理论题,基础知识,控制结构,循环结构,指针,数组/指针数组,字符串/字符串指针,函数/函数指针,程序题,结构体,文件。
C语言程序设计专升本模拟
一、单项选择题 (共20题,每题2分,共计40分)
( A )
1、有如下程序:
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\n", a, b);
}
该程序的输出结果是________。
( D )
2、若要定义一个具有5个元素的整型数组,以下错误的定义语句是________。
( A )
3、有以下程序
#include <stdio.h>
void f(int *p,int *q);
main()
{
int m=1,n=2,*r=&m;
f(r, &n);
printf("%d,%d",m,n);
}
void f(int *p,int *q)
{
p=p+1;
*q=*q+1;
}
程序运行后的输出结果是________。
( B )
4、有如下程序 int a[10]={ 1,2,3,4,5,6,7,8,9,10 },*p=a; 则数值为9的表达式是________。
( B )
5、设int*p[4]; 则标识符p是________。
( A )
6、下列关于continue和break的描述正确的是________。
( B )
7、下列关于自动类型转换的说法中,正确的是________。
( A )
8、以下结构体类型说明和变量定义中正确的是________。
( A )
9、有程序
#include<stdio.h>
main( ) {
int a,b,c=246;
a=c/100%9;
b=(-)& &(-1);
printf("%d,%d\n%,a,b);
}
输出结果是________。
( D )
10、c语言提供的预处理功能包括条件,其基本形式为: #×××标识符 程序段1 #else 程序段2 #endif 这里的×××可以是________。
( C )
11、下面程序的输出结果是______。
main()
{
int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};
int(*p)[4]=a,i,j,k=0;
for(i=0;i<3;i++) for(j=0;j<2;j++) k=p[i][j];
printf("%d\n",k);
}
( A )
12、下列合法的字符型常量是________。
( C )
13、以下程序运行后的输出结果是
#include<stdio.h>
struct st
{
int x, y;
} data[2] = {{1, 10},{2, 20}};
main ()
{
struct st *p = data;
printf ("%d,", p->y);
printf ("%d\n", (++p)->x);
}
( C )
14、将用高级程序语言编写的源程序翻译成目标程序的程序称______。
( C )
15、已知英文字母m的ascii码值为6dh,那么ascii码值为70h的英文字母是________。
( B )
16、若变量已正确定义并赋值,表达式( )不符合c语言语法。
( B )
17、以下对局部变量描述错误的是________。
( C )
18、若有以下语句,则正确的描述是char a[] ="toyou";
char b[] ={′ t′ ,′o′ ,′ y′,′o′ ,′u′ };
( A )
19、设有以下代码其中,循环体 a 与循环体 b 相同,以下叙述正确的是________。
( C )
20、执行下列语句后变量x和y的值是________。 y=10; x=y++;
二、判断题 (共10题,每题2分,共计20分)
( F )
1、do-while循环中,根据情况可以省略while.( )
( F )
2、分号是 c 语言中语句的结束符 , 不可用作分隔符。
( F )
3、c 语言标准输出操作中 ,putchar() 函数可以输出显示一个字符串。
( T )
4、在定义数组之后,根据数组中元素的类型及个数,在内存中分配一段连续存储单元用于存放数组中的各个元素。
( F )
5、switch语句中,每一个case的冒号后面都必须至少跟有一条语句。
( F )
6、以"a"方式打开一个文件时,文件指针指向文件首。
( T )
7、c语言本身并不提供输入输出语句。但可以通过输入输出函数来实现数据的输入输出。
( T )
8、c语言函数默认的返回值类型是 int 。( )
( T )
9、在C语言中,逗号既可以作为运算符,也可以作为分隔符。
( F )
10、输入操作称为写操作,将输入流中的信息存到内存时,使用写函数。
三、填空题 (共5题,每题4分,共计20分)
1、语句主要是实现次数循环结构,while语句主要是实现当型循环结构。
2、在c语言中,假使x为字符变量,如果我们采用printf("格式控制",x)格式输出x,那么"格式控制"具体表示为"( )"。
3、已知char str[]="student",则strlen(str)的值为________。
4、开发一个c程序要经过编辑、编译、()和运行4个步骤、
5、在c语言中,将字符串中大写字母转换成小写字母的函数是______________。
四、程序分析题 (共4题,每题5分,共计20分)
1、请在以下程序第一行的下划线处填写适当内容,使程序能正确运行。 ________ ( double,double);
main()
{
double x,y;
scanf("%lf%lf",&x,&y);
printf("%lf\n",max(x,y));
}
double max(double a,double b)
{
return(a>b ? a:b);
}
2、语句putchar('a'+2);的输出结果是________。
3、下面程序的运行结果是________。
main()
{
int a[5][5],i,j,n=1;
for(i=0;i<5;i++)for(j=0;j<5;j++)a[i][j]=n++;
printf("the result is:\n");
for(i=0;i<5;i++)
{
for(j=0;j<=i;j++)printf("%4d",a[i][j]);
printf("\n");
}
}
4、鸡兔同笼,头30,脚90,下面程序段计算鸡兔各有多少只。请分析程序填空。for(x=1;x<=30;x++ )
{
y=30-x;
if( 【1】________) printf("%d,%d",x,y);
}
五、编程题 (共3题,每题0分,共计50分)
1、编写程序,求s=1+(1+2)+….+(1+2+….+10)
2、输入5位同学的一组信息,包括学号、姓名、数学成绩、计算机成绩,求得每位同学的平均分和总分,然后按照总分从高到低排序。
3、从键盘上输入一个字符串, 计算字符串里有多少个空格、小写字母、大写字母、数字。
相关标签:
- C语言
- 绍兴文理学院
- 专升本模拟