c语言模拟题库Word文件下载.docx

上传人:b****3 文档编号:7109070 上传时间:2023-05-07 格式:DOCX 页数:22 大小:25.02KB
下载 相关 举报
c语言模拟题库Word文件下载.docx_第1页
第1页 / 共22页
c语言模拟题库Word文件下载.docx_第2页
第2页 / 共22页
c语言模拟题库Word文件下载.docx_第3页
第3页 / 共22页
c语言模拟题库Word文件下载.docx_第4页
第4页 / 共22页
c语言模拟题库Word文件下载.docx_第5页
第5页 / 共22页
c语言模拟题库Word文件下载.docx_第6页
第6页 / 共22页
c语言模拟题库Word文件下载.docx_第7页
第7页 / 共22页
c语言模拟题库Word文件下载.docx_第8页
第8页 / 共22页
c语言模拟题库Word文件下载.docx_第9页
第9页 / 共22页
c语言模拟题库Word文件下载.docx_第10页
第10页 / 共22页
c语言模拟题库Word文件下载.docx_第11页
第11页 / 共22页
c语言模拟题库Word文件下载.docx_第12页
第12页 / 共22页
c语言模拟题库Word文件下载.docx_第13页
第13页 / 共22页
c语言模拟题库Word文件下载.docx_第14页
第14页 / 共22页
c语言模拟题库Word文件下载.docx_第15页
第15页 / 共22页
c语言模拟题库Word文件下载.docx_第16页
第16页 / 共22页
c语言模拟题库Word文件下载.docx_第17页
第17页 / 共22页
c语言模拟题库Word文件下载.docx_第18页
第18页 / 共22页
c语言模拟题库Word文件下载.docx_第19页
第19页 / 共22页
c语言模拟题库Word文件下载.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

c语言模拟题库Word文件下载.docx

《c语言模拟题库Word文件下载.docx》由会员分享,可在线阅读,更多相关《c语言模拟题库Word文件下载.docx(22页珍藏版)》请在冰点文库上搜索。

c语言模拟题库Word文件下载.docx

A、a<

>

B、!

C、a=0 

D、a

9、以下正确的是( 

A、do-while语句构成的循环不能用其它语句构成的循环来代替

B、do-while语句构成的循环只能用break语句退出

C、用do-while语句构成循环时,只有在while后的表达式非零时结束循环

D、用do-while语句构成循环时,只有在while后的表达式为零时结束循环

10、 

有以下程序段   

n,t=1,s=0;

   

scanf("

%d"

&

n);

do{ 

s=s+t;

t=t-2;

}while 

(t!

=n);

为使此程序段不陷入死循环,从键盘输入的数据应该是( )。

(1分)

A、任意正奇数B、任意负偶数

C、任意正偶数D、任意负奇数

11、C语言中 

while 

和do-while循环的主要区别是( 

A、do-while的循环体至少无条件执行一次

B、while的循环控制条件比do-while的循环控制条件更严格

C、do-while允许从外部转到循环体内

D、do-while 

的循环体不能是复合语句

12、C语言中,数组名代表()。

 

A、数组全部元素的值B、数组首地址

C、数组第一个元素的值D、数组元素的个数 

13、在C 

语言中,引用数组元素时,其数组下标的数据类型允许是()。

A、整型常量 

B、整型表达式

C、整型常量或整型表达式 

D、任何类型的表达式

14、关于C语言以下说法正确的是( 

A、只有当实参和与其对应的形参同名时才共占用存储单元

B、形参是虚拟的,不占用存储单元

C、实参和与其对应的形参各占用独立的存储单元

D、实参和与其对应的形参共占用一个存储单元

15、返回值为void的函数,其含义是( 

A、调用函数之后,被调用的函数没有返回值

B、调用函数之后,被调用的函数不返回

C、调用函数之后,被调用的函数的返回值为任意的类型

D、以上三种说法都是错误的

16、C语言程序由函数组成。

以下说法正确的是( 

A、主函数必须在其它函数之前,函数内可以嵌套定义函数

B、主函数可以在其它函数之后,函数内不可以嵌套定义函数

C、主函数必须在其它函数之前,函数内不可以嵌套定义函数

D、主函数必须在其它函数之后,函数内可以定义函数

17、若有定义语句int 

(*p)[M];

其中的标识符p是() 

A、M个指向整型变量的指针B、指向M个整型变量的函数指针

C、一个指向具有M个整型元素的一维数组指针 

D、具有M个指针元素的一维指针数组,每个元素都只能指向整型量

18、若有语句:

char 

*line[5];

,以下叙述中正确的是()。

A、定义line是一个指针数组,每个数组元素是一个基类型为char的指针变量B、定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组

C、定义line是一个指针数组,语句中的*号称为间址运算符

D、定义line是一个指向字符型函数的指针

19、用C语言编写的代码程序( )。

A、可立即执行B、是一个源程序

C、经过编译即可执行D、经过编译解释才能执行 

20、若执行fopen函数时发生错误,则函数的返回值是()。

A、地址值B、0C、1D、EOF

21、计算机能直接执行的程序是( 

A、源程序 

B、目标程序

C、汇编程序 

D、可执行程序

22、以下合法的赋值语句是( 

A、x=y=100 

B、d--;

C、x 

D、c 

int(a+b);

23、下列叙述中正确的是()。

A、break语句只能用于switch语句B、在switch语句中必须使用default

C、break语句必须与switch语句中的case配对使用

D、在switch语句中,不一定使用break语句

25、对以下for循环:

for(x=0,y=0;

(y!

=123)&

(x<

4);

x++,y++;

叙述正确的是( 

A、是无限循环 

B、循环次数不定 

C、执行了4次 

D、执行了3次

26、在循环结构的循环体中执行break语句,其作用是( 

A、结束本次循环,进行下次循环  

B、继续执行break语句之后的循环体中各语句

C、跳出该循环体,提前结束循环   D、终止程序运行

27、若已定义数组:

float 

a[8];

则下列对数组元素引用正确的是()。

A、a[0] 

=1;

B、a[8]=a[0];

C、a=1;

D、a[3.5]=1;

28、有以下函数定义:

void 

fun(int 

n,double 

x) 

{……},若以下选项中的变量都已经正确定义并赋值,则对函数fun的正确调用语句是 

()。

A、fun(int 

y,double 

m);

B、k=fun(10,12.5);

C、fun(x,n);

D、void 

fun(n,x);

29、有如下函数调用语句:

fuc(rec1,rec2+rec3,(rec4,rec5));

该函数调用语句中,含有的实参个数是()。

A、3B、4

C、5D、有语法错

30、以下关于return 

语句的叙述中不正确的是()。

A、一个自定义函数中必须有一条return 

语句

B、一个自定义函数中可以根据不同情况设置多条return 

语句

C、定义成void 

类型的函数中可以有带返回值的return 

D、没有return 

语句的自定义函数在执行结束时不能返回到调用处 

31、 

说明语句"

(*p)()"

的含义是()。

A、p是一个指向一个一维数组的指针变量

B、p是指针变量,它指向一个整型数据的指针

C、p是一个指向函数的指针,该函数的返回值是一个整型

D、以上都不对

32、若有定义:

a[3][4];

不能表示数组元素a[1][1]的是()。

A、*(a[1]+1) 

B、*(&

a[1][1])

C、(*(a+1)[1]) 

D、*(a+5)

33、设有以下说明语句struct 

ex{ 

y;

example;

则下面的叙述中不正确的是() 

A、struct结构体类型的关键字B、example是结构体类型名

C、x,y,z都是结构体成员名D、struct 

ex是结构体类型

34、当定义一个结构体变量时,系统分配给它的内存空间是()。

A、结构中一个成员所需的内存量B、结构中最后一个成员所需的内存量

C、结构体中占内存量最大者所需的容量D、结构体中各成员所需内存量的总和

若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是()。

A、-3  B、9  

C、-12  D、6

41、以下叙述中正确的是()。

A、全局变量的的作用域一定比局部变量的作用域范围大

B、静态(static)类别变量的生存期贯穿于整个程序的运行期间

C、函数的形参都属于全局变量

D、未在定义语句中赋初值的auto变量和static变量的初值都是随机值

42、以下定义语句中,错误的是()。

A、inta[]={1,2};

B、char*a[3];

C、chars[10]="

test"

D、intn=5,a[n];

43、以下叙述中正确的是()。

A、C语言程序将从源程序中第一个函数开始执行

C、C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束

44、函数调用语句:

fseek(fp,-20L,2);

A、将文件位置指针移到距离文件头20个字节处

B、将文件位置指针从当前位置向后移动20个字节

C、将文件位置指针从文件末尾处后退20个字节

D、将文件位置指针移到离当前位置20个字节处

45、计算机能直接执行的程序是()。

A、源程序B、目标程序

C、汇编程序D、可执行程序

46、下面不是C语言合法标识符的是()。

A、fine5B、&

i

C、_scoreD、flag

47、若已定义a=8,b=2则表达式a||b&

(a-b*4)的运行结果是()。

A、8B、1

C、0D、2

48、以下选项中,当x为大于1的奇数时,值为0的表达式()。

A、x%2==1B、x/2

C、x%2!

=0D、x%2==0

49、表达式"

0?

(0?

3:

2):

(10?

1:

0)"

的值为()。

A、3B、2C、1D、0

53、合法的数组定义是()。

A、inta[]="

string"

B、inta[5]={0,1,2,3,4,5};

C、chara="

D、chara[]={0,1,2,3,4,5};

54、若函数的形参为一维数组,则下列说法中正确的是()。

A、调用函数时的对应实参必为数组名B、形参数组可以不指定大小

C、形参数组的元素个数必须等于实参数组的元素个数

D、形参数组的元素个数必须多于实参数组的元素个数

56、若有以下说明和语句,intc[4][5],(*p)[5];

p=c;

能正确引用c数组元素的是( )。

A、p+1B、*(p+3)

C、*(p+1)+3D、*(p[0]+2])  

58、当说明一个联合体变量时,系统分配给它的内存为()。

A、联台体中的一个成员所需的内存量B、联台体中最后一个成员所需的内存量

C、联台体体中占内存量最大者所需容量D、联台体中各成员所需内存量的总和

59.若要用fopen函数打开一个新的二进制文件,该文件要既能读也能写,则文件打开方式字符串应是()。

(1分)

A、"

ab+"

B、"

wb+"

C、"

rb+"

D、"

ab"

62、设有:

inta=1,b=2,c=3,d=4,m=2,n=2;

执行(m=a>

b)&

(n=c>

d)后n的值为()。

A、1B、2

C、3D、4

63、若变量c为char类型,能正确判断出c为小写字母的表达式是()。

(1分)

A、'

a'

=c<

='

z'

 B、(c>

)||(c<

C、('

=C)and('

=C) D、(c>

)&

(c<

64、在C语言中,用户能使用的正确标识符是()。

A、5fB、_5f

C、structD、_f.5

68、以下关于函数的叙述中正确的是()。

A、每个函数都可以被其它函数调用(包括main函数)

B、每个函数都可以被单独编译

C、每个函数都可以单独运行

D、在一个函数内部可以定义另一个函数

74、若有定义:

x=0, 

*p=&

x;

,则语句printf("

%d\n"

*p);

的输出结果是()。

A、随机值B、0C、x的地址D、p的地址

二、填空题(15道小题,共15分)

1、(函数)是C程序的主要组成部分。

2、在执行fopen函数时,ferror函数的初值是(0)(1分)

3、由顺序、选择、循环三种基本结构构成的程序叫(结构化) 

程序。

4、若k为int整型变量且赋值7,x为double型变量且赋值8.4,赋值表达式k=x的运算结果是(8)。

5、设y为int型变量,请写出描述"

y是奇数"

的表达式。

y%2==1

6、使用sqrt()函数前必须包含头文件(math.h)。

7、若a=1,b=2则表达式a<

b?

a:

b+1的值是

(1)。

8、下面程序段中循环体的执行次数是(3)次。

a=10;

b=0;

do 

{b=b+2;

a-=2+b;

while(a>

=0);

9、执行下面程序段后,k的值是(36)。

k=1;

n=263;

k*=n%10;

n=n/10;

while(n);

10、如定义语句为char 

a[ 

]= 

"

计算机"

b[ 

程序设计"

语句 

printf("

%s"

strcat(a,b));

的输出结果为。

计算机程序

11、字符串"

ab\n\\012/\\\"

的长度为(10)。

12、在主调函数中调用一个函数时,函数名后面括号中的参数称为(实际参数),简称(实参)。

13、如果一个变量值在某一时刻是存在的,则认为这一时刻属于该变量的(函数)(1分)

14、指针变量可以作为函数的参数,其作用是传递或接受一个变量的(地址)。

15、一个函数在编译时被分配一个入口地址,这个入口地址就称之为函数的(指针)。

16、C程序的基本组成单位是(函数)。

17、已知:

a=1,b=1,c=1;

执行完表达式c=++a&

b++后,变量b的值是

(1)。

19.以下程序的功能是计算s=1+12+123+1234+12345。

请填空。

main() 

t=0,s=0,i;

for(i=1;

i<

=5;

i++) 

t=i+;

}

s=%d\n"

s);

20.计算sum=1+1/2+1/4+...+1/50的值,并显示出来。

#include<

stdio.h>

intmain()

i=2;

sum=1.0;

while(i<

=50) 

{sum+=1/__;

i+=2;

()printf("

sum=%f\n"

sum);

21.在采用传值调用时,实参可以是常量、变量或表达式,而形参只能是(变量)。

23、定义p为指向整型数据的指针变量的语句为。

int*p;

24、赋值语句是由赋值表达式加上(分号)构成的。

26、当执行以下程序时,输入01234567890<

回车>

则其中while循环体将执行

(1)次。

#include 

{

ch;

while((ch=getchar())=='

0'

) 

#"

);

28、用%s输出字符串时,printf函数中的输出项是(字符数组名),不是数组元素名(1分)

29、在函数内部定义的只在本函数内有效的变量叫(局部变量)。

在函数以外定义的变量叫(全局变量)。

30、有int 

x=2,y=3;

且y+=(x++),则x=(3)。

31、以下程序的功能是求10个数中的正整数之和,请补全程序。

stdio.h"

Intmain()

{int 

s=0,i,j;

for(i=0;

=10;

i++)

{scanf("

j);

if(j<

=0) 

s+=j;

和=%4d"

}(1分)

32、以下findmax返回数组s中最大元素的下标,数组中元素的个数由t传入,请填空。

findmax(int 

s[],int 

t) 

k,p;

for(p=0,k=p;

p<

t;

p++) 

if(s[p]>

s[k]) 

__________ 

return 

k;

34、函数可以相互调用,但不能调用(主)函数。

35、可以通过字符数组名或字(符串函数)对一个字符串进行整体的输入输出。

37、在变量说明中给同类变量赋初值时,各变量之间用(逗号)隔开。

39、以下程序以每行10个数据的形式输出a数组,请填空。

voidmain()

inta[50],i;

printf("

输入50个整数:

for(i=0;

50;

i++)

scanf("

a[i])

for(i=1;

=50;

{

if(i%10==0)

printf("

%3d\n"

);

%3d"

a[i-1]);

}

}

40、使用getchar()函数前必须包含头文件(stdio.h)。

41、在定义函数时函数名后面括号中的变量名称为(形参)。

42、C语言中,数组元素的下标下限为(0)。

44、有int 

x,y,z;

且x=3.2,y=4.2,z=2,则表达式z=(x+y)/z的值为(3)。

47、下面程序的功能是输出数组s中最大元素的下标,请填空。

main( 

k, 

p;

s[ 

]={1,-9,7,2,-10,3};

6;

p++)

____________

k);

48、C语言中,数组在内存中占一片(连续)的存储区。

50、如果一个变量在某个文件或函数范围内是有效的,就称该范围为该变量的(作用域)。

四、程序分析题(9道小题,共36分)

1、有以下程序,执行后输出结果是什么?

16

main()

i=0,s=0;

if 

(i%2!

\\if(i%2==0)zeresultis12

i++;

continue;

+= 

i;

while( 

 

s);

2、如下程序的执行结果是什么?

6

i,sum=0;

=3;

sum++)

sum+=i;

3、阅读程序,分析程序的功能。

Zifudeshurushuchu

#include 

string.h>

s[80];

80;

s[i]=getchar( 

if(s[i]=='

\n'

break;

s[i]='

\0'

i=0;

while(s[i]) 

putchar(s[i++]);

putchar('

4、以下程序的输出结果是什么?

-850,2,0

main() 

i,j,row,col,m;

arr[3][3]={{100,200,300},{28,72,-30},{-850,2,6}};

m=arr[0][0];

3;

for(j=0;

j<

j++) 

if(arr[i][j]<

m) 

{m=arr[i][j];

row=i;

col=j;

%d,%d,%d\n"

m,row,col);

5、以下程序的输出结果是什么?

输入1,3输出是:

maxis3

max(float 

x,float 

y);

a,b;

c;

%f,%f,"

a,&

b);

c=max(a,b);

max 

is 

c);

y)

z;

z=x>

y?

x:

return( 

6、以下程序的输出结果是什么?

21

func(int 

a,int 

b)

c=a+b;

x=6,y=7,z=8, 

r;

r=func((x--,y++,x+y), 

z--);

r);

7、以下程序的输出结果是什么?

a[]={2,4,6,8,10},y=1,x,*p;

p=&

a[1];

for(x=0;

x++) 

y+=*(p+x);

pr

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2