C语言基本概念练习题sWord格式文档下载.docx
- 文档编号:19101270
- 上传时间:2023-01-03
- 格式:DOCX
- 页数:22
- 大小:26.67KB
C语言基本概念练习题sWord格式文档下载.docx
《C语言基本概念练习题sWord格式文档下载.docx》由会员分享,可在线阅读,更多相关《C语言基本概念练习题sWord格式文档下载.docx(22页珍藏版)》请在冰豆网上搜索。
inti=10,j=1;
执行语句printf("
%d,%d\n"
i--,++j);
后输出结果是()。
A、9,2B、10,2C、9,1D、10,1
14、字符串"
\t\"
\065\xff\n"
的长度为()。
A、5B、14
C、8D、输出项不合法,无正常输出
15、已有定义:
charc;
执行赋值语句c=('
z'
-'
a'
)/2+'
A'
;
后,变量c的值为()。
A、MB、NC、OD、Q
16、以下4个选项中,不能看做一条语句的是()。
A、;
B、a=5,b=2.5,c=3.6;
C、if(a<
5);
D、if(b!
=5)x=2;
y=6;
17、设a、b和c都是int变量,且a=3,b=4,c=5;
则以下的表达式中,值为0的表达式是()。
A、a&
&
bB、a<
=bC、a||b+c&
b-cD、!
((a<
b)&
!
c||1)
18、若有定义语句inta,b;
doublex;
则下列选项中没有错误的是()。
A、switch(x%2)B、switch((int)x/2.0)
{case0:
a++;
break;
{case0:
case1:
b++;
case1:
default:
default:
}}
C、switch((int)x%2)D、switch((int)(x)%2)
{case0:
{case0.0:
case1:
case1.0:
default:
default:
}}
19、以下程序段的输出结果是()。
main()
{intx,y,z;
x=0;
y=2;
z=3;
switch(x)
{case0:
switch(y==2)
{case1:
printf("
*"
);
case2:
%"
}
case1:
switch(z)
$"
default:
#"
}
A、*B、%C、$*D、*#
20、以下程序的输出结果是()。
{inta=45,b=40,c=50,d;
d=a>
=30?
b:
c;
switch(d)
{case30:
%d"
a);
case40:
b);
case50:
c);
break;
A、304050#B、304050C、4050D、#
21、以下程序的输出结果是()。
{inta,b,c,x=35;
a=b=c=0;
x=35;
if(!
a)
x--;
elseif(b);
if(c)
x=3;
else
x=4;
%d\n"
x);
A、35B、4C、3D、34
22、当c的值不为0时,能正确将c的值赋给变量a和b的选项是()。
A、c=b=aB、(a=c)||(b=c)C、(a=c)&
(b=c)D、a=c=b
23、若变量已定义为float型,要通过语句scanf("%f%f%f",&
a,&
b,&
c);
给a赋予10.0,b赋予22.0,c赋予33.0,下列不正确的输入形式是()。
A、10<
回车>
22<
33<
B、10.0,22.0,33.0<
C、10.0<
空格>
22.0<
33.0<
D、10<
Tab>
22<
24、下面程序段的输出结果是()。
intx=1,y=10;
if(x=y)printf("
AAA"
elseprintf("
BBB"
A、AAAB、BBBC、AAABBBD、不确定
25、下面程序段的输出结果是()。
for(x=9;
x>
0;
x--)
if(x%3!
=0)
{printf("
--x);
continue;
A、741B、852C、963D、875421
26、对以下循环:
for(a=0,b=0;
(b!
=123)&
(a<
=4);
a++);
说法正确的是()。
A、无限循环B、循环次数不定C、执行4次D、执行5次
27、在下列程序中,while循环的循环次数是()。
main()
{inti=0;
while(i<
10)
{if(i<
1)continue;
if(i==5)break;
i++;
}
......
A、1B、10C、6D、死循环、不能确定次数
28、以下程序的输出结果是()。
{inti=0,a=0;
while(i<
20)
{for(;
)
{if((i%10)==0)
elsei--;
i+=11;
a+=i;
A、21B、32C、33D、11
29、当输入为"
quert"
时,下面程序的执行结果是()。
{while(putchar(getchar())!
='
'
A、quertB、RvfsuC、quert?
D、rvfsu?
30、以下能正确计算1×
2×
3×
…×
10的程序段是()。
A、do{i=1;
s=1;
s=s*i;
i++;
}while(i<
=10);
B、do{i=1;
s=0;
C、i=1;
do{s=s*i;
D、i=1;
二、绘制NS算法流程图
(1)输入10个数,求其中的最大值。
(2)输入2个数,求它们的最大公约数。
第6章-数组基本概念练习题
1、在C语言中,引用数组元素时,其数组下标的数据类型允许是()。
A、floatB、intC、doubleD、任何类型
答案:
2、以下对一维整型数组a的正确定义是()。
A、inta(10);
B、intn=10,a[n];
C、intn;
scanf(“%d”,&
n);
inta[n];
D、#defineSIZE10
inta[SIZE];
3、以下能对一维数组a进行正确初始化的语句是()。
A、inta[10]=(0,0,0,0,0);
B、inta[10]={};
C、inta[]={0};
D、inta[10]="
abcdefg"
4、不能给数组的首元素赋值的语句是()。
A、inta[2]={1};
B、inta[2]={1*2};
C、inta[2];
scanf(“%d”,a);
D、inta[2];
a[1]=1;
5、下面程序的运行结果是()。
{inta[6],i;
for(i=1;
i<
6;
i++)
{a[i]=9*(i-2+4*(i>
3))%5;
%2d"
a[i]);
A、-40404B、-40403C、-40443D、-40440
6、下列定义正确的是()。
A、inta[4]={1,2,3,4,5};
B、intb[]={2,5};
C、inta(10);
D、int4e[4];
7、若有说明inta[][4]={0,0};
则下列叙述不正确的是()。
A、数组a的每个元素都可以得到初值0。
B、二维数组a的第一维的大小为1。
C、数组a的行数为1,但是有4个元素。
D、只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值
8、设有charstr[10];
下列语句正确的是()。
A、scanf("
%s"
&
str);
B、printf("
%c"
str);
C、printf("
str[0]);
D、printf("
9、下列说法正确的是()。
A、在C语言中,可以定义元素个数可变的数组。
B、在C语言中,数组元素的个数可以不确定,允许随机变动。
C、在C语言中,数组元素的数据类型可以不一致。
D、在C语言中,定义了一个数组后,就确定了它所容纳的具有相同数据类型元素的个数。
10、假设array是一个有10个元素的整型数组,则下列写法中正确的是()。
A、array[0]=10;
B、array=0;
C、array[10]=0;
D、array[-1]=0;
11、分析下列程序运行后,输出的结果是()。
{intn[3],i,j,k;
for(i=0;
3;
n[i]=0;
k=2;
k;
for(j=0;
j<
j++)
n[j]=n[i]+1;
n[1]);
A、2B、1C、0D、3
12、若有以下定义:
inta[5]={5,4,3,2,1};
charb=‘a’,c,d,e;
则下面表达式中数值为2的是()。
A、a[3]B、a[e–c]C、a[d-b]D、a[e-b]
13、下面几个字符串处理表达式中能用来把字符串str2连接到字符串str1后的一个是()。
A、strcat(str1,str2);
B、strcat(str2,str1);
C、strcpy(str1,str2);
D、strcmp(str1,str2);
14、设有两字符串“Beijing”、“China”分别存放在字符数组str1[20],str2[20]中,下面语句中能把“China”连接到“Beijing”之后的为()。
A、strcpy(str1,str2);
B、strcpy(str1,“China”);
C、strcat(str1,“China”);
D、strcat(“Beijing”,str2);
15、若有如下定义:
,则下列语句的输出结果是()。
inta[3][3]={1,2,3,4,5,6,7,8,9},i;
for(i=0;
=2;
i++)printf(“%d”,a[i][2-i]);
A、357B、369C、159D、147
16、下列字符串赋值语句中,不能正确把字符串Cprogram赋给数组的语句是()。
A、chara[]={‘C’,‘’,‘p’,‘r’,‘o’,‘g’,‘r’,‘a’,‘m’};
B、chara[10];
strcpy(a,“Cprogram”);
C、chara[10];
a=“Cprogram”;
D、chara[10]={“Cprogram”};
17、以下不能对二维数组a进行正确初始化的语句是()。
A、inta[2][3]={0};
B、inta[][3]={{1,2},{0}};
C、inta[2][3]={{1,2},{3,4},{5,6}};
D、inta[][3]={1,2,3,4,5,6};
18、下面程序段的运行结果是()。
charc[5]={‘a’,‘b’,‘\0’,‘c’,‘\0’};
printf(“%s”,c);
A、‘a’‘b’B、ab\0c\0C、abcD、ab
19、判断字符串a和b是否相等,应当使用()。
A、if(a==b)B、if(a=b)C、if(strcpy(a,b))D、if(strcmp(a,b))
20、有字符数组a[80]和b[80],则正确的输出语句是()。
A、puts(a,b);
B、printf(“%s,%s”,a[],b[]);
C、putchar(a,b);
D、puts(a);
puts(b);
21、若有如下定义和语句,则输出结果是()。
chars[12]=“abook!
”;
printf(“%d”,strlen(s));
A、12B、8C、7D、6
22、以下能对二维数组a进行正确说明和初始化的语句是()。
A、inta()(3)={(1,0,1),(2,4,5)};
B、inta[2][]={{3,2,1},{5,6,7}};
C、inta[][3]={{3,2,1},{5,6,7}};
D、inta
(2)()={(1,0,1),(2,4,5)};
23、若有说明:
inta[3][4]={0};
则下面正确的叙述是()。
A、只有元素a[0][0]可以得到初值0B、此说明语句不正确;
C、数组a中每个元素均可得到初值0D、数组a每个元素均可得到初值,但不一定为0
第7章-函数基本概念练习题
1.有如下函数调用语句func(rec1,rec2+rec3,(rec4,rec5));
该函数调用语句中,含有的实参个数是。
A)3B)4C)5D)有语法错
2.有如下程序,该程序的输出的结果是。
intrunc(inta,intb)
{return(a+b);
}
main()
{intx=2,y=5,z=8,r;
r=func(func(x,y),z);
printf(“%\d\n”,r);
A)12B)13C)14D)15
3.有如下程序,该程序的输出结果是。
longfib(intn)
{if(n>
2)return(fib(n-1)+fib(n-2));
elsereturn
(2);
{printf(“%d\n”,fib(3));
A}2B}4C}6D}8
4.有以下程序,执行后输出的结果是。
voidf(intx,inty)
{intt;
if(x<
y){t=x;
x=y;
y=t;
}}
{inta=4,b=3,c=5;
f(a,b);
f(a,c);
f(b,c);
printf("
%d,%d,%d\n"
a,b,c);
A)3,4,5B)5,3,4C)5,4,3D)4,3,5
5.以下函数的功能是:
通过键盘输入数据,为数组中的所有元素赋值。
在下划线处应填入的是。
#defineN10
voidarrin(intx[N])
while(i<
N)
scanf("
_________);
A)x+iB)&
x[i+1]C)x+(i++)D)&
x[++i]
6.有以下程序,执行后输出结果是。
{chars[]="
\n123\\"
printf("
strlen(s),sizeof(s));
A)赋初值的字符串有错B)6,7C)5,6D)6,6
7.以下叙述中正确的是。
A)全局变量的作用域一定比局部变量的作用域范围大
B)静态(static)类别变量的生存期贯穿于整个程序的运行期间
C)函数的形参都属于全局变量
D)未在定义语句中赋初值的auto变量和static变量的初值都是随机值
8.以下程序执行后输出的结果是。
{inta=4,b=3,c=5,d,e,f;
d=f1(a,b);
d=f1(d,c);
e=f2(a,b);
e=f2(e,c);
f=a+b+c-d-e;
d,f,e);
f1(intx,inty)
{intz;
z=(x>
y)
x:
y;
return(z);
f2(intx,inty)
z=(x<
A)3,4,5B)5,3,4C)5,4,3D)3,5,4
9.以下程序的输出结果是。
intf(void)
{staticinti=0;
ints=1;
s+=i;
return(s);
main()
{inti,a=0;
i<
5;
i++)a+=f();
printf(“%d\n”,a);
}
A)1B)0C)非0的数D)–1
10.以下C语言中,对函数不正确的描述是。
A)当用数组名作形参时,形参数组改变可使实参数组随之改变
B)允许函数递归调用
C)函数形参的作用范围只是局限于所定义的函数内
D)函数说明必须在主调函数之前
11.以下所列的各函数首部中,正确的是。
A)voidplay(var:
Integer,varb:
Integer)B)voidplay(inta,b)
C)voidplay(inta,intb)D)Subplay(aasinteger,basinteger)
12.以下叙述中不正确的是。
A)在C中,函数中的自动变量可以赋初值,每调用一次,赋一次初值。
B)在C中,在调用函数时,实在参数和对应形参在类型上只需赋值兼容。
C)在C中,外部变量的隐含类别是自动存储类别。
D)在C中,函数形参可以说明为register变量。
13.以下对C语言函数的有关描述中,正确的是。
A)在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
B)C函数既可以嵌套定义又可以递归调用
C)函数必须有返回值,否则不能使用函数
D)C程序中有调用关系的所有函数必须放在同一个源程序文件中
14.一个数据类型为void的函数中可以没有return语句,那么函数的被调用时。
A)没有返回值B)返回一个系统默认值C)返回值由用户临时决定D)返回一个不确定的值
15.在下面的函数声明中,存在着语法错误的是。
A)BC(inta,int);
B)BC(int,int);
C)DC(int,int=5);
D)BC(intx,inty);
16.以下函数值的类型是。
fun(floatx)
{floaty;
y=3*x-4;
returny;
A)intB)不确定C)voidD)float
17.下
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 基本概念 练习题