广西艺术学院计算机C语言模拟
本试卷为广西艺术学院计算机C语言模拟,题目包括:单项选择题,填空题,编程题。
覆盖的内容包括:理论题,基础知识,控制结构,循环结构,指针,数组/指针数组,字符串/字符串指针,函数/函数指针,结构体,程序题。
计算机C语言模拟
一、单项选择题 (共20题,每题2分,共计40分)
( A )
1、有以下程序
main()
{
int a,b,c=246;
a=c/100%9;
b=(-1)&&(-1);
printf("%d,%d\n",a,b);
}
输出结果是________。
( D )
2、下面程序输出的是________。
main()
{
int t=l;
fun(fun(t));
}
fun(int h)
{
static int a[3]={1,2,3};
int k;
for(k=0;k<3;k++)a[k]+=a[k]-h;
for(k=0;k<3;k++)printf("%d",a[k]);
printf("\n");
return(a[h]);
}
( B )
3、下列程序的运行结果是________。
void main()
{
int s=0,k;
for(k=7;k>1;k--)
{
switch(k)
{
case 1: case 4: case 7: s++: break;
case 2: case 3: case 6:break;
case 0: case 5: s+=2: break;
}
}
printf("s=%d",s);
}
( B )
4、c语言规定,简单变量做实参时,它和对应形参之间的数据传递方式为________.
( D )
5、有以下定义和语句
struct workers
{
int num;
char name[20];
char c;
srruct
{
int day;
int month;
int year;
}
s;
};
struct workers w,*pw;
pw=&w 能给w 中year 成员赋1980 的语句是________。
( D )
6、若有说明 :char c[10]= { 'e','a','s','t','\0' };, 则下述说法中正确的是 __ __________.
( D )
7、以下函数 func() 的功能是:使具有 n 个元素的一维数组 b 的每个元素的值都增加 2 ,划线处应填入 _____.
func(int b[ ],int n)
{
int ;
for(i=0;i<n;i++) __________;
}
( A )
8、在下列字符中,其ascii码值最小的一个是________。
( C )
9、若有以下定义:int t[3][2]; 能正确表示t数组元素地址的表达式是______。
( A )
10、下列描述说明正确的是________。
( D )
11、下列能正确定义字符串的语句是________。
( C )
12、已知英文字母m的ascii码值为6dh,那么ascii码值为70h的英文字母是________。
( C )
13、\、/、mod、*等4个算术运算符中,优先级最低的是________。
( D )
14、若有定义,int*f(); 则下列描述中正确的是________。
( D )
15、在16位编译器环境下,double类型占多少字节?
( B )
16、请选出合法的c语言赋值语句。( )
( C )
17、下列不正确的转义字符是________。
( C )
18、以下程序的输出结果是 _______ 。
main( )
{
int i=0,s=0;
for (;;)
{
if (i==6) break;
i++;
s+=i;
}
printf("%d\n",s);
}
( C )
19、enum a
{
sum=9,mon=-1,tue
}
;
定义了________。
( C )
20、结构化程序设计所规定的三种基本控制结构是()。
二、填空题 (共10题,每题2分,共计20分)
1、设p=30,那么执行q=(++p)后,表达式的结果q为 ________ ,变量p的结果为 ________ 。 若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是 ________ 。
2、请在以下程序第一行的下划线处填写适当内容,使程序能正确运行。 ________ ( 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);
}
3、有一下程序
#include <stdio.h>
main()
{
int f,f1,f2,i;
f1=0;
f2=1;
printf("%d %d ",f1,f2);
for(i=3;i<=5;i++)
{
f=f1+f2;
printf("%d",f);
f1=f2;
f2=f;
}
printf("\n");
}
程序运行后的输出结果是 ________。
4、在c语言中,在调用一个函数的过程中又出现__________或间接地调用该函数本身,这一现象称为函数的递归调用。
5、设x和y均为int型变量,且x=1,y=2,则表达式1.0+x/y的值为 ()
6、若要定义一个单精度实型变量f,则应该使用的定义语句为________。
7、结构化程序三种结构为________。
8、函数swap(arr,n) 可完成对arr 数组从第一个元素到第n 个元素两两交换。在运行调用函数中的如下语句后, a[0]和a[1]的值分别为【1】________,原因是【2】________。a[0]=1,a[1]=2; swap(a,2);
9、以下程序输出的结果是 ________。
int ff(int n)
{
static int f=l;
f=f*n;
return f;
}
main()
{
int i;
for(i=1;i<=5;i++) printf("%d\n",ff(i));
}
10、已知函数定义为:int stat(int a,float *p),则此函数的两个参数类型分别是______、 浮点型。
三、编程题 (共3题,每题0分,共计40分)
1、编写程序:计算并输出一维数组a[10]中的最大值。
2、编写程序:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,况原有的数据和计算出的平均分数存放在磁盘文件"stud"中。功能如下: 请输入5个同学的信息:学生号,姓名,3门成绩: 1 a 60 70 80 2 b 60 80 90 3 c 59 39 89 4 e 56 88 98 5 d 43 88 78 打开 stud文件,内容如下 1 a 60 70 80 70 2 b 60 80 90 76 3 c 59 39 89 62 4 e 56 88 98 80 5 d 43 88 78 69
3、整数转字符串。输入一个整数1234,得到字符串: “1234”
相关标签:
- C语言
- 广西艺术学院
- 模拟