C语言练习题z6章Word文档下载推荐.docx
- 文档编号:19765150
- 上传时间:2023-01-09
- 格式:DOCX
- 页数:21
- 大小:22.45KB
C语言练习题z6章Word文档下载推荐.docx
《C语言练习题z6章Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C语言练习题z6章Word文档下载推荐.docx(21页珍藏版)》请在冰豆网上搜索。
该函数调用语句中,含有的实参个数是
A)3B)4C)5D)有语法错
11.以下所列的各函数首部中,正确的是
A)voidplay(var:
integer,varb:
integer)B)voidplay(inta,b)
C)voidplay(inta,intb)D)Subplay(aasinteger,basinteger)
12.以下程序运行后,输出结果是
A)84B)99C)95D)44
intd=1;
fun(intp)
{intd=5;
d+=p++;
printf("
%d"
,d);
main()
{inta=3;
fun(a);
d+=a++;
%d\n"
13.以下程序的输出结果是
A)699B)669C)61515D)6615
{staticintd=5;
d+=p;
%d"
return(d);
main()
{inta=3;
%d\n"
,fun(a+fun(d)));
14.以下程序的输出结果是
A)9B)6C)36D)18
#definef(x)x*x
{inta=6,b=2,c;
c=f(a)/f(b);
,c);
15.下列程序执行后的输出结果是
A)helloB)helC)hloD)hirm
voidfunc1(inti);
voidfunc2(inti);
charst[]="
hello,friend!
"
;
voidfunc1(inti)
{printf("
%c"
,st[i]);
if(i<
3){i+=2;
func2(i);
voidfunc2(inti)
3){i+=2;
func1(i);
{inti=0;
func1(i);
printf("
\n"
);
16.有如下程序
intfunc(inta,intb)
{return(a+b);
{intx=2,y=5,z=8,r;
r=func(func(x,y),z);
%\d\n"
,r);
该程序的输出的结果是
A)12B)13C)14D)15
17.有如下程序
longfib(intn)
{if(n>
2)return(fib(n-1)+fib(n-2));
elsereturn
(2);
{printf("
,fib(3));
该程序的输出结果是
A)2B)4C)6D)8
18.在C语言中,函数的隐含存储类别是
A)autoB)staticC)externD)无存储类别
19.以下程序的输出结果是
A)0B)29C)31D)无定值
fun(intx,inty,intz)
{z=x*x+y*y;
{inta=31;
fun(5,2,a);
,a);
20.以下程序的输出结果是
A)1B)2C)3D)4
longfun(intn)
{longs;
if(n==1||n==2)s=2;
elses=n-fun(n-1);
returns;
%ld\n"
,fun(3));
21.以下函数值的类型是
fun(floatx)
{floaty;
y=3*x-4;
returny;
A)intB)不确定C)voidD)float
22.设有以下函数:
f(inta)
{intb=0;
staticintc=3;
b++;
c++;
return(a+b+c);
如果在下面的程序中调用该函数,则输出结果是
{inta=2,i;
for(i=0;
i<
3;
i++)
,f(a));
A)7B)7C)7D)7
89107
91137
23.以下程序的输出结果是
inta,b;
voidfun()
{a=100;
b=200;
{inta=5,b=7;
fun();
%d%d\n"
,a,b);
A)100200B)57C)200100D)75
24.以下程序的输出结果是
intf()
{staticinti=0;
ints=1;
s+=i;
i++;
{inti,a=0;
5;
i++)a+=f();
,a);
A)20B)24C)25D)15
25.若有以下程序
#include<
stdio.h>
voidf(intn);
{voidf(intn);
f(5);
voidf(intn)
,n);
则以下叙述中不正确的是
A)若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数f
B)若在主函数前对函数f进行说明,则在主函数和其后的其它函数中都可以正确调用函数f
C)对于以上程序,编译时系统会提示出错信息:
提示对f函数重复说明
D)函数f无返回值,所以可用void将其类型定义为无值型
26.以下程序的输出结果是
f(intb[],intm,intn)
{inti,s=0;
for(i=m;
n;
i=i+2)s=s+b[i];
{intx,a[]={1,2,3,4,5,6,7,8,9};
x=f(a,3,7);
,x);
A)10B)18C)8D)15
27.以下程序中函数sort的功能是对a所指数组中的数据进行由大到小的排序
voidsort(inta[],intn)
{inti,j,t;
n-1;
i++)
for(j=i+1;
j<
j++)
if(a[i]<
a[j]){t=a[i];
a[i]=a[j];
a[j]=t;
{intaa[10]={1,2,3,4,5,6,7,8,9,10},i;
sort(&
aa[3],5);
10;
i++)printf("
%d,"
,aa[i]);
程序运行后的输出结果是______。
A)1,2,3,4,5,6,7,8,9,10,B)10,9,8,7,6,5,4,3,2,1,
C)1,2,3,8,7,6,5,4,9,10,D)1,2,10,9,8,7,6,5,4,3,
28.有以下程序,程序运行后的输出结果是______。
intf(intn)
{if(n==1)return1;
elsereturnf(n-1)+1;
{inti,j=0;
for(i=1;
i++)j+=f(i);
,j);
A)4B)3C)2D)1
29.以下程序中的函数reverse的功能是将a所指数组中的内容进行逆置。
voidreverse(inta[],intn)
{inti,t;
n/2;
{t=a[i];
a[i]=a[n-1-i];
a[n-1-i]=t;
{intb[10]={1,2,3,4,5,6,7,8,9,10};
inti,s=0;
reverse(b,8);
for(i=6;
i++)s+=b[i];
,s);
A)22B)10C)34D)30
30.以下程序中函数f的功能是将n个字符串,按由大到小的顺序进行排序。
#include<
string.h>
voidf(charp[][10],intn)
{chart[20];
inti,j;
for(j=i+1;
if(strcmp(p[i],p[j])<
0)
{strcpy(t,p[i]);
strcpy(p[i],p[j]);
strcpy(p[j],t);
{charp[][10]={"
abc"
,"
aabdfg"
abbd"
dcdbe"
cd"
};
inti;
f(p,5);
,strlen(p[0]));
程序运行后的输出结果是
A)6B)4C)5D)3
31.有以下程序,执行后输出的结果是
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);
%d,%d,%d\n"
,a,b,c);
A)4,3,5B)5,3,4C)5,4,3D)3,5,4
32.有以下程序,程序运行后的输出结果是
fun(inta,intb)
{if(a>
b)return(a);
elsereturn(b);
{intx=3,y=8,z=6,r;
r=fun(fun(x,y),2*z);
,r);
A)3B)6C)8D)12
33.有以下程序,程序的执行结果是
charfun(charx,chary)
{if(x<
y)returnx;
returny;
{inta='
9'
,b='
8'
,c='
7'
%c\n"
,fun(fun(a,b),fun(b,c)));
}
A)函数调用出错B)8C)9D)7
34.有以下程序,执行后输出结果是
voidf(intv,intw)
t=v;
v=w;
w=t;
{intx=1,y=3,z=2;
if(x>
y)f(x,y);
elseif(y>
z)f(y,z);
elsef(x,z);
,x,y,z);
A)1,2,3B)3,1,2C)1,3,2D)2,3,1
35.有以下程序,执行后的输出结果是
intf(intb[][4])
{inti,j,s=0;
for(j=0;
4;
{i=j;
if(i>
2)i=3-j;
s+=b[i][j];
returns;
{inta[4][4]={{1,2,3,4},{0,2,4,5},{3,6,9,12},{3,2,1,0}};
A)12B)11C)18D)16
36.有以下程序,执行后的输出结果是
{inti;
i=f(4+4)/f(2+2);
,i);
}
A)28B)22C)16D)4
37.有以下程序,执行后的输出结果是
voidf(inta[],inti,intj)
if(i<
j)
{t=a[i];
a[i]=a[j];
f(a,i+1,j-1);
{inti,aa[5]={1,2,3,4,5};
f(aa,0,4);
for(i=0;
A)5,4,3,2,1,B)5,2,3,4,1,C)1,2,3,4,5,D)1,2,3,4,5,
二、填空题
38.以下程序的输出结果是【8,17】。
intfun(intx,inty)
{staticintm=0,i=2;
i+=m+1;
m=i+x+y;
returnm
{intj=4,m=1,k;
k=fun(j,m);
,k);
39.函数fun的功能是:
使一个字符串按逆序存放,请填空
voidfun(charstr[])
{charm;
for(i=0,j=strlen(str);
【strlen(str)/2或strlen(str)/2.0或0.5*strlen(str)或j或j-1】;
i++,j--)
{m=str[i];
str[i]=【str[j-1]或*(str+j-1)】;
str[j-1]=m;
%s\n"
,str);
40.函数pi的功能是根据以下近似公式求π值:
(π*π)/6=1+1/(2*2)+1/(3*3)+..+1/(n*n)
现在请你在下面的函数中填空,完成求π的功能。
#include"
math.h"
doublepi(longn)
{doubles=0.0;
longi;
=n;
i++)s=s+【1.0/(i*i)】;
return(sqrt(6*s));
41.以下程序的输出结果是【246】。
{staticinta=0;
a+=2;
;
{intcc;
for(cc=1;
cc<
cc++)fun();
42.下面程序的输出结果是【024】。
#defineMAX3
inta[MAX];
{fun1();
fun2(a);
fun1()
{intk,t=0;
for(k=0;
k<
MAX;
k++,t++)a[k]=t+t;
fun2(intb[])
{intk;
k++)printf("
,*(b+k));
43.下列程序的输出结果是【56】。
intt(intx,inty,intcp,intdp)
{cp=x*x+y*y;
dp=x*x-y*y;
{inta=4,b=3,c=5,d=6;
t(a,b,c,d);
%d%d\n"
,c,d);
44.以下程序的运行结果是【8,17】
{intk=4,m=1,p;
p=func(k,m);
%d,"
,p);
p=func(k,m);
func(inta,intb)
{staticintm=0,i=2;
m=i+a+b;
returnm;
45.以下程序中,主函数调用了LineMax函数,实现在N行M列的二维数组中,找出每一行上的最大值。
请填空。
#defineN3
#defineM4
voidLineMax(intx[N][M])
{inti,j,p;
i<
N;
{p=0;
for(j=1;
j<
M;
if(x[i][p]<
x[i][j])【sp=j】;
Themaxvalueinline%dis%d\n"
,i,【cx[i][p]】);
{intx[N][M]={1,5,7,4,2,6,4,3,8,2,3,1};
【LineMax(x)】
46.以下函数的功能是:
求x的y次方,请填空。
doublefun(doublex,inty)
{inti;
doublez;
for(i=1,z=x;
y;
i++)z=z*【x】;
returnz;
47.若已定义:
inta[10],i;
,以下fun函数的功能是:
在第一个循环中给前10个数组元素依次赋1、2、3、4、5、6、7、8、9、10;
在第二个循环中使a数组前10个元素中的值对称折叠,变成1、2、3、4、5、5、4、3、2、1。
fun(inta[])
=10;
i++)【a[i-1]】=i;
i++)【a[9-i]】=a[i];
48.有以下程序,程序运行后的输出结果是【9】。
floatfun(intx,inty)
{return(x+y);
{inta=2,b=5,c=8;
%3.0f\n"
,fun((int)fun(a+c,b),a-c));
49.以下程序运行后的输出结果是【3,2,2,3】。
voidfun(intx,inty)
{x=x+y;
y=x-y;
x=x-y;
%d,%d,"
,x,y);
{intx=2,y=3;
fun(x,y);
%d,%d\n"
50.以下函数的功能是计算s=1+1/2!
+1/3!
+……+1/n!
,请填空。
doublefun(intn)
{doubles=0.0,fac=1.0;
inti;
{fac=fac【*(1.0/i)】;
s=s+fac;
51.函数YangHui的功能是把杨辉三角形的数据赋给二维数组的下半三角,形式如下
1
11
121
1331
14641.
其构成规律是:
(1)第0列元素和主对角线元素均为1
(2)其余元素为其左上方和正上方元素之和
(3)数据的个数每行递增1
请将程序补充完整。
#defineN6
voidyanghui(intx[N][N])
{inti,j;
x[0][0]=1;
{x[i][0]=【x[i][i]】=1;
i;
x[i][j]=【x[i-1][j-1]+x[[i-1][j]】;
52.以下程序的功能是调用函数fun计算:
m=1-2+3-4+…+9-10,并输出结果。
intfun(intn)
{intm=0,f=1,i;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 练习题 z6