模拟题一
一、选择题
1.下列说法正确的是( )。
A)main函数必须放在C程序的开头
B)main函数必须放在C程序的最后
C)main函数可以放在C程序的中间部分,但在执行C程序时是从程序开头执行的
D)main函数可以放在C程序的中间部分,但在执行C程序时是从main函数开始的
2.C语言中不能用来表示整常数的进制是( )。
A)十进制 B)十六进制 C)八进制 D)二进制
3.在下面几组数据类型中, 全为最常用的基本数据类型的是哪一组:( )。
A)整型 实型 字符型 B)整型 数组 指针
C)数组 结构体 共用体 D)指针 逻辑型 空类型
4.C语言规定标识符由( )等字符组成。
A)字母 数字 下划线 B)中划线 字母 数字
C)字母 数字 逗号 D)字母 下划线 中划线
5.若有说明语句:char c= ‘\64’ ; 则变量C包含( )。
A)1个字符 B)2个字符
C)3个字符 D)说明不合法,C值不确定
6.若有如下定义:int a=2,b=3; float x=3.5,y=2.5; 则表达式:
(float)(a+b)/2+(int)x%(int)y的值是( )。
A)2.500000 B)3.500000 C)4.500000 D)5.000000
7.设有如下定义和执行语句,其输出结果为( )。
int a=3,b=3;
a = --b + 1; printf(“%d %d”,a,b);
A)3 2 B)4 2 C)2 2 D)2 3
8.以下表达式: 2+’a’+i*f, 其中i为整型变量,f为float型变量,则表达式的最终数据类型为( )。
A)int B)float C)char D)double
9.C语言中,运算对象必须是整型数的运算符是( )。
A)% B)\ C)% 和 \ D)**
10.有如下语句:
printf(“%s,%5.3s\n”,“COMPUTER”,“COMPUTER”);
执行语句后的最终结果为( )。
A)COMPUTER ,CMP . B)COMPUTER, CMP.
C)COMPU, CMP. D)COMPU, CMP .
11.能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是( )。
A)(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)
B)(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)
C)(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)
D)(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)
12.以下if语句中语法错误的是( )。
A)if (a>b)printf(“%f”,a); B)if(a>b)printf(“%f”,a);
else printf(“%f”,b);
C)if(a>b)printf(“%f”,a) D)if(a>b)printf(“%f”,b);
else printf(“%f”,b); else printf(“%f”,a);
13.程序段如下
int k=0;
while(k++<=2); printf("last=%d\n",k);
则执行结果是last= ( ) 。
A)2 B)3 C)4 D)无结果
14.能表示整数x符合下面两个条件的语句是( )。
(1)“能被4整除,但不能被100整除”.(2)能被4整除,又能被400整除.
A)(x%4==0&&x%100!=0)||x%400==0
B)(x%4==0||x%100!=0)&&x%400==0
C)(x%4==0&&x%400!=0)||x%100==0
D)(x%100==0||x%4!=0)&&x%400==0
15.下面有关for循环的正确描述是( )。
A)for循环只能用于循环次数已经确定的情况
B)for循环是先执行循环体语句,后判断表达式
C)在for循环中,不能用break语句跳出循环体
D)for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
16.循环语句中的for语句,其一般形式如下:
for(表达式1;表达式2;表达式3) 语句
其中表示循环条件的是( )。
A)表达式1 B)表达式2 C)表达式3 D)语句
17.若二维数组a有m列,则a[I][j]元素前的数组元素个数为( )。
A)j*m+i B)i*m+j C)i*m+j-228 D)i*m+j+1
18.以数组作为函数的参数时传递的数组的首地址,那么实参数组与形参数组之间的数据传递方式为( )。
A)地址传递 B)单向值传递
C)双向值传递 D)随机传递
19.C语言中变量的指针指的是( )。
A)变量类型 B)变量值 C)变量值 D)变量地址
20.将字符串str2连接到字符串str1中应使用结构体数组不能作为参数传递给函数( )。
A)strcpy(str1,str2) B)strcat(str1,str2)
C)strcmp(str1,str2) D)strcat(str2,str1)
21.设有两字符串“Beijing”、“China”分别存放在字符数组str1[10],str2[10]中,下面语句中能
把“China”连接到“Beijing”之后的为( )。
A)strcpy(str1,str2);
B)strcpy(str1, “China”);
C)strcat(str1,“China”)
D)strcat(“Beijing”,str2);
22.若有以下定义:
int a[10],*p=a; 则*(p+3)表示的是( )。
A)元素a[3]的地址 B)元素a[3]的值
C)元素a[4]的地址 D)元素a[4]的值
23.以下程序的运行结果是( )。
main( )
{ int a=2, i ;
for(i=0;i<3;i++) printf(“%4d”,f(a) ) ; }
f( int a)
{ int b=0,c=3;
b++; c++; return(a+b+c); }
A)7 10 13 B)7 7 7
C)7 9 11 D)7 8 9
24.若有如下语句: int *p1,*p2; 则其中int所指的是( )。
A)p1的类型 B)*p1和*p2的类型
C)p2的类型 D)p1和p2所能指向变量的类型
25.在C语言程序中,若未在函数定义时说明函数类型,则函数默认的类型为( ) 。
A)void B)double C)int D)char
26.若有如下说明:
int a[10]={1,2,3,4,5,6,7,8,9,10};
char b=’a’,d,e;
则数值为4的表达式是( )。
A)a[4] B)a[d-b] C)a[‘d’-b] D)a[e-b]
27.在说明一个结构体变量时系统分配给它的存储空间是( )。
A)该结构体中第一个成员所需存储空间
B)该结构体中最后一个成员所需存储空间
C)该结构体中占用最大存储空间的成员所需存储空间
D)该结构体中所有成员所需存储空间的总和
28.有如下程序段,在Turbo C环境下运行的结果为( )。
main( )
{
int i=2,p,k=1; int f(int a,int b)
p=f(i,++k); { int c;
printf(“I=%d,p=%d”,k,p); if(a>b) c=1;
} else if (a==b) c=0;
else c=-1; return(c); }
A)1,0 B)2,0 C)2,-1 D)1,1
29.使用fseek函数可以实现的操作是( )。
A)改变文件的位置指针的当前位置
B)文件的顺序读写
C)文件的随机读写
D)以上都不对
30.若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是( )。
A) EOF B) 0 C) 非零值 D) NULL
A) EOF B) 0 C) 非零值 D) NULL
二、填空题
1.为表示关系:x≤y≤z ,应使用的C语言表达式是_____(x<=y)________。
2.字符串是以__________为结束标志的一维字符数组。有定义:char a[]="";则a数组的长度是____________。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论