关键词不能为空

当前您在: 主页 > 高中公式大全 >

C语言学习知识练习进步题(带规范标准答案)

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-01-24 15:48
tags:

妈妈的手-usedtodo

2021年1月24日发(作者:阮永清)
/.
一、

单项选择题

1



A


)是构成
C
语言程序的基本单位。

A
、函数








B
、过程







C
、子程序




D
、子例程

2

C
语言程序从





C










开始执行。




A)
程序中第一条可执行语句


B)
程序中第一个函数

C)
程序中的
main
函数

D)
包含文件中的第一个函数

3
、以下说法中正确的是(


C








A

C
语言程序总是从第一个定义的函数开始执行




B
、在
C
语言程序中,要调用的函数必须在
main( )
函数中定义




C

C
语言程序总是从
main( )
函数开始执行




D

C
语言程序中的
main( )
函数必须放在程序的开始部分

4.
下列关于
C
语言的说法错误的是(

B












A) C
程序的工作过程是编辑、编译、连接、运行


B) C
语言不区分大小写。

C) C
程序的三种基本结构是顺序、选择、循环


D) C
程序从
main
函数开始执行

5.
下列正确的标识符是(
C




A.-a1












B.a[i]









C.a2_i









t
6
.下列
C
语言用户标识符中合法的是(

B









A)3ax


B)x


C)case


D)-e2



E)union
7
.下列四组选项中,正确的
C
语言标识符是(

C





A



%x










B




a+b






C



a123









D


123
8
、下列四组字符串中都可以用作
C
语言程序中的标识符的是(

A







A

print

_3d


db8

aBc




B

Iam

one_half

start$$it

3pai



C

str_1

Cpp

pow

while



D

Pxq

My->book

line#




9.C
语言中的简单数据类型包括(
D








A
、整型、实型、逻辑型








B
、整型、实型、逻辑型、字符型




C
、整型、字符型、逻辑型






D
、整型、实型、字符型

10.

C
语言程序中,表达式
5%2
的结果是


C













A)2.5




B)2





C)1








D)3
11
.如果
int a=3,b=4
;则条件表达式

的值是
__
A
__


A) 3








B) 4











C) 0






D) 1
12
.若
int x=2,y=3,z=4
则表达式
x的结果是
(
B


).





A)4


B)3



C)2



D)0

E)1
13

C
语言中,关系表达式和逻辑表达式的值是(

B











A) 0








B) 0

1







C) 1






D)

T



F


14.
下面
(

D



)
表达式的值为
4.



A)

11/3

B)

11.0/3
/.



C)

(float)11/3
D)

(int)(11.0/3+0.5)
15.
设整型变量

a=2
,则执行下列语句后,浮点型变量
b
的值不为
0.5
的是(


B



A.b=1.0/a










B.b=(float)(1/a)



C.b=1/(float)a





D.b=1/(a*1.0)
16.
若“
int n; float f =13.8;

,
则执行“
n=(int)f%3
”后,
n
的值是(
A


A.1














B.4
















C.4.333333








D.4.6
17.
以下对一维数组
a
的正确说明是:



D





A)
char a

10






B) int a[]



C)int k

5

a[k]







D

char

a[3]={
‘< br>a

,

b

,

c
’< br>};
18.
以下能对一维数组
a
进行初始化的语句是
: (



C




)


A. int a[5]=(0,1,2,3,4,)

B. int a(5)={}


C. int a[3]={0,1,2}






D. int a{5}={10*1}
19.

C
语言中对一维整型数组的正确定义为



D














A)int a(10);









B)int n=10,a[n];

C)int

n;a[n];







D)#define N 10























int a[N];

20
、已知:
int

a[10];
则对
a
数组元素的正确引用是(


D







A

a[10]




B

a[3.5]




C

a(5)




D

a[0]
21.
若有以下数组说明,则
i=10;a [a[i]]
元素数值是(

B




int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};
A.10









B.9










C.6










D.5
22.
若有说明:
int a[][3]={{1,2,3},{4,5},{6,7}};
则数组
a
的第一维的大小为
: (
B


A.

2




B.

3




C.

4


D.
无确定值

5 7






D) 3 6 9
23.
对二维数组的正确定义是(

C






a[ ] [ ]={1,2,3,4,5,6};




a[2] [ ]={1,2,3,4,5,6};
a[ ] [3]={1,2,3,4,5,6};




a[2,3]={1,2,3,4,5,6};
24
.已知
int a[3][4];
则对数组元素引用正确的是
__
C
___







A)a[2][4]



B)a[1,3]


C)a[2][0]



D)a(2)(1)
25.C
语言中函数返回值的类型是由




A





决定的
.




A)
函数定义时指定的类型










B) return
语句中的表达式类型






C)
调用该函数时的实参的数据类型

D)
形参的数据类型

26.

C
语言中,函数的数据类型是指
(
A
)
A
函数返回值的数据类型











B.
函数形参的数据类型

C
调用该函数时的实参的数据类型



D.
任意指定的数据类型

27.

在函数调用时,以下说法正确的是(

B




A.
函数调用后必须带回返回值


B.
实际参数和形式参数可以同名


C.
函数间的数据传递不可以使用全局变量


D.
主调函数和被调函数总是在同一个文件里

28.

C
语言中,表示静态存储类别的关键字是
:




C





A) auto



B) register



C) static



D) extern
)


/.
29
.未指定存储类别的变量,其隐含的存储类别为(

A













A)auto


B)static


C)extern


D)register

30.
若有以下说明语句:









struct

student









{ int num;











char name[ ];











float score;










}stu;






则下面的叙述不正确的是
: (
D
)
A. struct
是结构体类型的关键字


B. struct student
是用户定义的结构体类型

C. num, score
都是结构体成员名









D. stu
是用户定义的结构体类型名

31.
若有以下说明语句:









struct

date









{ int year;











int month;











int day;










}brithday;






则下面的叙述不正确的是
__
C
___.
A) struct
是声明结构体类型时用的关键字








B) struct date
是用户定义的结构体类型名

C) brithday
是用户定义的结构体类型名




D) year,day
都是结构体成员名

32.
以下对结构变量
stul
中成员
age
的非法引用是



B






struct student
{ int age


int num


}stu1,*p


p=&stu1


A)


B)


C) p->age



D) (*p).age
33.
设有如下定义:

struck sk
{


int a;
float b;
}data;
int *p;
若要使
P
指向
data
中的
a< br>域,正确的赋值语句是


C





A) p=&a;

B) p=data.a;
C) p=&data.a;
D)*p=data.a;
34.
设有以下说明语句:












typedef

struct

stu











{

int

a;














float

b;
/.











} stutype;




则下面叙述中错误的是(

D









A

struct
是结构类型的关键字




B

struct stu
是用户定义的结构类型







C

a

b
都是结构成员名

D

stutype
是用户定义的结构体变量名

35


语句
int *p;
说明了



C




A)p
是指向一维数组的指针





B)p
是指向函数的指针
,
该函数返回一
int
型数据

C)p
是指向
int
型数据的指针



D)p
是函数名
,
该函数返回一指向
int
型数据的指针

36
.下列不正确的定义是(

A





A.
int *p=&i,i;

















*p,i;
C

int i,*p=&i;

















i,*p;
37.
若有说明:
int n=2,*p=&n,*q=p,
则以下非法的赋值语句是
:


D




A

p=q







B

*p=*q




C

n=*q





D

p=n
38
.有语句:
int a[10],;



B



是对指针变量
p
的正确定义和初始化。

A)int p=*a;

B)int *p=a;


C)int p=&a;

D)int *p=&a;
39.
若有说明语句“
int a[5],*p=a;

,
则对数组元素的正确引用是
(
C
)


A.a[p]











B.p[a]













C.*(p+2)








D.p+2
40.
有如下程序

int

a[10]={1,2,3,4,5,6,7,8,9,10},*P=a;
则数值为
9
的表达式是


B





A) *P+9











B) *(P+8)









C) *P+=9








D) P+8
41.

C
语言中,以



D



作为字符串结束标志

A)

n






B)’








C) ’
0




D)’
0



42.
下列数据中属于“字符串常量”的是(

A




A.

a










B.{ABC}








C.

abc0










D.

a


43.
已知
char x[]=
则关于两个数组长度的正确描述是



B


.
A)
相同





B)x
大于
y



C)x
小于
y


D)
以上答案都不对

44.
下面各函数中能实现打开文件功能的是



A




A) fopen






B) fgetc








C) fputc

A) FILE

*fp;







B) FILE

fp;
C) file

*fp;








D) file

fp;
46
.以读写方式打开一个已有的文本文件
file1,
并且
FILE
*fp
,下面
fopen
函数正确的调用
方式是
(
B
)


=fopen(

file1

,

r

)
=fopen(

fil e1

,

r+

)
=fopen(

file1

,

rb

)
=fope n(

file1

,

w

)
D) fclose
45.
下列语句中,把变量
fp
说明为一个文件型指针的是
(
A
)


/.
二、

读程序

基本输入输出及流程控制

1.
#include
main()
{ int a=1,b=3,c=5;
if (c==a+b)

printf(
else

printf(
}
运行结果为:
no

2.


#include
main()
{ int a=12, b= -34, c=56, min=0;
min=a;


if(min>b)


min=b;


if(min>c)


min=c;
printf(
}
运行结果为:

min=-34


3.
#include
main()

{ int x=2,y= -1,z=5;



if(xif(y<0)

z=0;
else

z=z+1;


printf(“%d

n”,z
);

}
运行结果为:
5

/.
4.

#include
main()
{ float a,b,c,t;
a=3;
b=7;
c=1;
if(a>b)



{t=a;a=b;b=t;}
if(a>c)



{t=a;a=c;c=t;}
if(b>c)




{t=b;b=c;c=t;}
printf(
}



运行结果为:
1.00,

2.00,

7.00


5


#include

< stdio .h >
main ( )
{

float

c=3.0 , d=4.0;
if ( c>d ) c=5.0;
else

if ( c==d ) c=6.0;
else

c=7.0;

printf ( “%.1f

n”,c ) ;

}
运行结果为:
7.0

6.
#include
main()
{
int m;

scanf(


if (m >= 0)









{
if (m%2 == 0)
printf(






else

printf(
}

else


{
if (m % 2 == 0)

printf(



else


printf(
}
若键入-
9
,则运行结果为
:


-9 is a negative odd


/.
7.

#include
main()
{ int num=0


while(num<=2){ num++

printf(

}
}
运行结果为:

1
2
3

8


#include
main( )
{ int sum=10,n=1;
while(n<3)


{sum=sum-n;

n++; }

printf(“%d,%d”,n,sum);


}

运行结果为:
3,7

9.
#include
main()
{ int num,c;

scanf(

do

{c=num%10;

printf(

}while((num/=10)>0);
printf(

}
从键盘输入
23
,则运行结果为:
32



10
#include
main()
{ int s=0,a=5,n;
scanf(
do


{ s+=1;

a=a-2; }while(a!=n);
printf(

%dn

}
若输入的值
1
,运行结果为:

2,1




/.
11


#include



















main()

































{char c;































c=getchar();



























while(c!='?')




{putchar(c);



c=getchar(); }




























}





如果从键盘输入
abcde

fgh
(回车)

运行结果为:
abcde

12


#include
main()
{ char c;


while((c=getchar())!=’$$’)









{ if(‘A’<=c&&c<=

Z’)


putchar(c);










else if(

a

<=c&&c<=

z

)

putchar(c-32);
}

当输入为
ab*AB%cd#CD$$
时,运行结果为:
ABABCDCD

13.


#include
main()
{ int x, y =0;
for(x=1;x<=10;x++)
{ if(y>=10)


break;

y=y+x;

}

printf(“%d


%d”,y,x);

}
运行结果为:
10


5

14.
#include

main( )

{

char ch;




ch=getchar( );




switch(ch)






{

case

‘A’ : printf(“%c”,’A’);










case

‘B’ : printf(“%c”,’B’); break;










default: printf(“%s

n”,”other”);


} }
当从键盘输入字母
A
时,运行结果为:
AB
}

/.
15.


#include
main( )
{ int a=1,b=0




scanf(“%d”,&a);

switch(a)
{

case 1: b=1

break


case 2: b=2

break


default : b=10

}
printf(


}
若键盘输入
5
,运行结果为:
10

16.

#include

main()_
{ char grade=’C’;



switch(grade)








{ case ‘A’: printf(“90
-100
n”);











case ‘B’: printf(“80
-90
n”);

case ‘C’: printf(“70
-80
n”);

case ‘D’: printf(“60
-70
n”); break;

case ‘E’: printf(“<60

n”);

default : printf(“error!

n”);












}




}
运行结果为:

70-80
60-70


17.
#include
main()
{ int y=9;

for(;y>0;y- -)
if(y%3==0)

{ printf(%d”,
- -y);

continue;
}
}
运行结果为:

852

/.
18.

#include
main()
{ int i,sum=0;

i=1;
do{ sum=sum+i; i++; }while(i<=10);
printf(“%d”,sum);

}
运行结果为:

55


19.
#include
#define N 4
main()
{ int i;

int x1=1,x2=2;
printf(
for(i=1;i<=N;i++)
{ printf(
if(i%2==0)

printf(
x1=x1+x2;
x2=x2+x1;
}
}
运行结果为:

1


2


3


5
8


13

21

34


20
#include



main( )



{

int

x, y;






for(x=30, y=0; x>=10, y<10; x--, y++)









x/=2, y+=2;






printf(“x=%d,y=%d

n”,x,y);

}
运行结果为:

x=0,y=12




/.
21.

#include
#define N 4
main( )
{ int

i,j;

for(i=1;i<=N;i++)


{ for(j=1;j





printf(


printf(


printf(
}}
运行结果为:

*
*
*
*





























/.
数组

1.
#include
main()
{

int


i, a[10];
for(i=9;i>=0;i--)


a[i]=10-i;
printf(“%d%d%
d
”,a[2],a[5],a[8]);

}
运行结果为:

852


2.

#include
main()
{ int i,a[6];

for (i=0; i<6; i++)






a[i]=i;

for (i=5; i>=0 i--)

printf(
}



运行结果为:

5

4

3

2

1

0


3.

#include
main( )
{ int i,k,a[10],p[3]


k=5


for(i=0

i<10

i++)
a[i]=i


for(i=0

i<3

i++)
p[i]=a[i*(i+1)]


for(i=0

i<3

i++)
k+=p[i]*2


printf(


}
运行结果为:
21



/.
4.
#include
int

m[3][3]={{1},{2},{3}};
int

n[3][3]={1,2 ,3};
main( )
{

printf(

%d,

, m[1][0]+n[0][0]);



printf(

%dn

,m[0][1]+n[1][0]);
}
运行结果为:

3,0


5.
#include
main()
{ int i;
int x[3][3]={1,2,3,4,5,6,7,8,9};


for (i=1; i<3; i++)
printf(





}



运行结果为:

6

8











6.
#include
main( )
{ int n[3][3], i, j


for(i=0

i<3

i++ )
{for(j=0

j<3

j++ )
{n[i][j]=i+j


printf(

%d


, n[i][j])


}
printf(“

n”);

}
}
运行结果为:

0

1

2
1

2

3
2

3

4




/.
7


#include
main()
{
char d iamond[][5]={{

_

,

_
’< br>,

*

},{

_

,

*

,

_

,

*

},
{

*

,

_
,

_

,

_

,
*

},{

_

,

*

,

_

,

*

},{

_

,

_

,

*

}};
int i,j;
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
printf(

%c

,diamond[i][j]);
printf(

n

);
}
}
注:

_
”代表一个空格。

运行结果为:

*
* *
* *
* *
*
8.

#include
main( )


{ int i, f[10];




f[0]=f[1]=1;




for(i=2;i<10;i++)










f[i]=f[i-2]+f[i-1];




for(i=0;i<10;i++)









{ if(i%4==0)


printf(

n

);










printf(

%d


,f[i]);









}


}
运行结果为:

1

1

2

3
5

8

13

21
34

55







/.
9



#include “stdio.h”



func(int

b[ ])


{

int

j;





for(j=0;j<4;j++)







b[j]=j;


}



main( )


{

int

a[4], i;





func(a);





for(i=0; i<4; i++)








printf(“%
2
d”,a[i]);



}
运行结果为:








0 1 2 3


10.


#include
m
ain
()


{float fun(float x[])














float ave,a[3]={4.5

2

4}






ave=fun

a

;





















printf(“ave=%
7.2
f”,ave);

}

float fun

float x[]


















{int j;
float aver=1



for (j=0;j<3;j++)
aver=x[j]*aver;


return

aver



}
运行结果为:

ave=


36.00


11.
#include
main()
{int a[2][3]={{1,2,3},{4,5,6}};
int b[3][2],i,j;
for(i=0;i<=1;i++)
{for(j=0;j<=2;j++)









b[j][i]=a[i][j];
/.
}
for(i=0;i<=2;i++)



{for(j=0;j<=1;j++)










printf(




}

}
运行结果为:





1



4



2



5



3



6

12


#include
f(int

b[],int

n)
{int

i,r;

r=1;

for (i=0;i<=n;i++)

r=r*b[i];

return (r);
}
main()

{int x,a[]={1,2,3,4,5,6,7,8,9};


x=f(a,3);


printf(“%d

n”,x);

}
运行结果为:


24





13.
#include
main()
{int j,k;

static int x[4][4],y[4][4];
for(j=0;j<4;j++)


for(k=j;k<4;k++)





x[j][k]=j+k;
for(j=0;j<4;j++)


for(k=j;k<4;k++)





y[k][j]=x[j][k];

for(j=0;j<4;j++)


for(k=0;k<4;k++)





printf(
}

运行结果为:

0,0,0,0,1,2,0,0,2,3,4,0,3,4,5,6
/.
函数

1.
#include
int Sub(int a, int b)
{return (a- b);}
main()
{int

x, y, result = 0;

scanf(

result = Sub(x,y )

printf(
}
当从键盘输入
:6,3
运行结果为:

result =3



2.

#include
int

min( int x, int y )


{ int

m



if

( x> y )

m = x


else





m = y



return(m)








main()


{


int

a=3,b=5,abmin
















abmin = min(a,b)














printf(“min

is

%d”


abmin)



}
运行结果为:

min

is

5

3.
#include

func(int x) {






x=10;




printf(

%d,

,x);

}

main( )

{

int x=20;




func(x);




printf(

%d

, x);

}
运行结果为:

10, 20





4.
#include
int m=4;
int func(int x,int y)
{

int m=1;
return(x*y-m);
}
main()
{int a=2,b=3;
printf(
printf(

}
运行结果为:

4
1



5.
#include
int fun(int a, int b)
{ if(a>b)


return(a);
else



return(b);
}
main()
{ int x=15, y=8, r;
r= fun(x,y);
printf(
}
运行结果为:
r=15


6.
#include
int fac(int n)
{ int f=1,i;
for(i=1;i<=n;i++)


f=f * i;
return(f);
}
main()
{ int j,s;
scanf(“%d”,&j);

s=fac(j);
printf(
}
如果从键盘输入
3



运行结果为:
/.
3!=6

/.
7.

#include
unsigned fun6(unsigned num)

{ unsigned k=1;
do

{ k*=num%10;

num/=10;
}while(num);





return k;
}
main()

{ unsigned n=26;


printf(

%dn

,fun6(n));

}
运行结果为:
12

8.
#include
int max(int x, int y);
main()
{ int a,b,c
a=7;b=8;
c=max(a,b);
printf(
}
max(int x, int y)
{ int z;
z=x>y? x : y;
return(z)
}
运行结果为:

Max is 8











妈妈的手-usedtodo


妈妈的手-usedtodo


妈妈的手-usedtodo


妈妈的手-usedtodo


妈妈的手-usedtodo


妈妈的手-usedtodo


妈妈的手-usedtodo


妈妈的手-usedtodo



本文更新与2021-01-24 15:48,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/561280.html

C语言学习知识练习进步题(带规范标准答案)的相关文章

  • 爱心与尊严的高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊严高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊重的作文题库

    1.作文关爱与尊重议论文 如果说没有爱就没有教育的话,那么离开了尊重同样也谈不上教育。 因为每一位孩子都渴望得到他人的尊重,尤其是教师的尊重。可是在现实生活中,不时会有

    小学作文
  • 爱心责任100字作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任心的作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文