西华师范大学历年计算机C语言复习题
本试卷为西华师范大学历年计算机C语言复习题,题目包括:单项选择题,填空题,编程题。
覆盖的内容包括:理论题,基础知识,控制结构,循环结构,指针,数组/指针数组,字符串/字符串指针,函数/函数指针,结构体,程序题。
计算机C语言复习题
一、单项选择题 (共20题,每题2分,共计40分)
( A )
1、设x=011050,则x=x801252的值是________。
( D )
2、若已定义:int a[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;其中0≤i≤9,则对a数组元素的引用不正确的是________。
( A )
3、从循环体内某一层跳出,继续执行循环外的语句是:________。
( A )
4、在c语言中,存储一个字符型、整型、单精度实型变量所需的空间是________。型、单精度实型变量所需的空间是________。
( B )
5、struct ex
{
int x ;
float y;
char z ;
}
example;
则下面的叙述中不正确的是________。
( B )
6、c语言对嵌套if语句的规定是:else总是与( ) 。
( D )
7、下面程序的输出是______。
main ()
{
struct cmplx
{
int x ;
int y ;
}
cnum[2]={1 , 3 , 2 , 7};
printf ( "%d\n" , cnum[0].y/cnum[0].x*cnum[1].x );
}
( B )
8、下面程序是计算 n 个数的平均值 , 请填空 . _________
#include<stdio.h>
void main( )
{
int i,n;
float x,avg=0.0;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%f",&x);
avg=avg+______;
}
avg=________;
printf("avg=%f\n",avg);
}
( D )
9、判断字符型变量ch是否为大写英文字母,应使用表达式
( C )
10、设有定义语句int a []= { 66,77,99 },则下列对此语句的叙述中错误的是________。
( D )
11、包含哪种语句的函数不能声明为内联函数( )
( A )
12、执行下列程序段后输出的结果是________
{
int x,y,z=1;
for(x=1,y=-1;x<y;x++,y--) z++;
printf("%d\n",z);
}
( D )
13、若有说明语句 char a[ ]="it is mine"; char *p="it is mine"; 则以下不正确的叙述是________。
( C )
14、请读程序片段(字符串内没有空格字符):printf("%d\n",strlen("ats\n012\1\\") );
上面程序片段的输出结果是______。
( D )
15、下列字符中,错误的转义字符是________。
( B )
16、算法具有五个特性,以下选项中不属于算法特性的是______。
( B )
17、若有定义语句:double x[5]= {1.0,2.0,3.0,4.0,5.0 }, *p=x;
则错误引用x数组元素的是______。
( B )
18、以下叙述中正确的是________。
( A )
19、以下叙述中正确的是________。
( A )
20、若有 int a[10], *p=a; ,且 a 数组已赋值,则与 a[4]不等价的表达式为________。
二、填空题 (共10题,每题2分,共计20分)
1、以下程序运行后的输出结果是 ________ 。
main()
{
int x=0210;
printf("%x\n",x);
}
2、以下程序运行后的输出结果是 ________
fun(int x)
{
if(x/2>0) fun(x/2);
printf("%d ",x);
}
main()
{
fun(6);
}
3、以下程序的输出结果是 ________ 。
main()
{
char s[]="abcdef";
s[3]=‘\0';
printf("%s\n",s);
}
4、有int x=3,y=-4,z=5; 则表达式(x&&y)==(x||z)的值为 ________。
5、若有语句double x=17; int y; ,当执行y=(int)(x/5)%2;之后y的值是 ________。
6、若有以下定义语句float x[3][3]={{1.0,2.0,3.0},{4.0,5.0,6.0}};,则表达式"x[1][1]*x[2][2]"的值是【1】。
7、局部变量的作用域是从定义的位置起,到( )结束止。
8、下列程序段的运行结果是________。
main()
{
int n,s=0;
for(n=1; n<=5; n++)
{
if(n%2!=0) continue;
s=s+i;
}
printf("%d\n",n);
}
9、若有以下定义, int m=5,y=2; 则计算表达式y+=y-=m*=y 后y的值是【】。
10、编译预处理包括( )、文件包含、条件编译等。
三、编程题 (共3题,每题0分,共计40分)
1、统计结构体数组中性别(sex)为'M'的变量的个数。
要求:
①数组元素依次赋初值为:{1 , "Andy" , 'M' } 、 {2 , "Mike" , 'F' } 、 {3 , "Rose" , 'M'}。
②结构体定义如下:struct Student{int num;char name[30];char sex;};
2、一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
3、编写程序,读一个在字母C和X之间的字符,打印出该字母在中间的相邻五个字母。如输入F,则输出DEFGH。
相关标签:
- C语言
- 西华师范大学
- 复习题