大学C语言考试问题1
C语言模拟试题
一、判断
1、 关系运算符<= =与= =的优先级相同。(N )
2、 C语言的函数可以嵌套定义。(N )
3、 若有定义和语句:int a;char c;float f;scanf(“%d,%c,%f”,&a,&c,&f);若通过键盘输入:10,A,12.5,则a=10,c=’A’,f=12.5.( Y )
4、 变量根据其作用域的范围可以分作局部变量和全局变量。( Y )
5、 #define和printf都不是C语句。( Y )
6、 Int I,*p=&I;是正确的C说明。( Y )
7、 结构体类型只有一种。( N )
8、 在Turbo C中,整形数据在内存中占2个字节。( N )
9、 一个include命令可以指定多个被包含的文件。( N )
10、有如下说明:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是*(p+8).( Y )
二、选择
2、C语言中,char类型数据占(A)
A、1个字节 B、2个字节 C、4个字节 D、8个字节
3、已知x=43,ch=’A’,y=o;则表达式(x>=y&&ch
A、0 B、语法错 C、1 D、“假”
4、以下的选择中,正确的赋值语句是(C)
A、a=1,b=2 B、j++ C、a=b=5 D、y=int(x)
5、C语言源程序的后缀是(B)
A、exe B、c C、obj D、cp
6、执行下列语句的输出为(A)
Int j=-1; if(j<=1)printf(“***\n”);
Else printf(“%%%\n”);
A、*** B、%%% C、%%%c D、有错,执行不正确
8、以下程序的运行结果是(A)
Main()
{ int n;
For(n=1;n<=10;n++)
{ if(n%3= =0) continue;
Printf(“%d”,n);
}
}
A B、369 C、12 D、1234567890
9、以下程序段的输出结果为(B)
for (i=4;i>1;i--)
for(j=1;j
putchar(‘#’);
A、无 B、# # # # # C、# D、# # #
10、以下对一维整形数组a的正确说明是(D)
A、int a(10 ) B、int n=10,a[n] C、int n;scanf(“%d”,&n);int a[n] D、#define SIZE 10(换行)int a[SIZE]
11、以下不能对二维数组a进行正确的初始化的语句是(C)
A、int a[2][3]={10} B、int a[][3]={{1,2},{0}} C、int a[2][3]={{1,2},{3,4},{5,6}}
D、int a[][3]={1,2,3,4,5,6}
12、C语言规定,函数返回值的类型是由(D)
Areturn语句中的表达式类型所决定 B、调用该函数时的主调函数类型所决定
C、调用该函数时系统临时决定 D、在定义该函数时所指定的函数类型所决定
13、C语言规定:简单变量做实参时,它和对应形参之间的诗句传递方式是(B)
A、地址传递 B、单向值传递 C、由实传给形参,再由形参传给实参 D、由用户指定的传递方式
14、若有定义:char *p1,*p2,*p3,*p4,ch;则不能正确赋值的程序语句是(C)
A、p1=&ch;scanf(‘”%c”,p1) B、p2=(char*)malloc(1);scanf(“%c”,p2)
C、*p3=getchar() D、p4=&ch;*p4=getchar()
15、若有double *p,x[10];int i=5;使指针变量p指向元素x[5]的语句为(A)
A、p=&x[i] B、p=x C、p=x[i] D、p=&(x+i)
17、以下运算符中,优先级最高的符是(C)
A、︱︳ B、% C、! D、= =
18、char a[10];不能将字符串“abc”存储在数组中的是(C)
A strcpy(a,”abc”) B a[0]=0;strcat(a,”abc”) C a=”abc ” D int i;for(i=0;i<3;i++) a[i]=i+97;a[i]=0
19、C语言的if语句中,用作判断的表达式为(A)
A、任意表达式 B、逻辑表达式 C、关系表达式 D、算术表达式
20、C程序中的宏张开是在(C)
A、编译时进行的 B、程序执行时进行的 C、编译前