return(p);}
A)i=pB)a[p]=a[i]
C)p=jD)p=i
D
12.函数pi的功能是根据以下近似公式求π值:
(π*π)/6=1+1/(2*2)+1/(3*3)+……+1/(n*n)
请你在下面程序中的划线部分填入________,完成求π的功能。
#include""
doublepi(longn)
{doubles=;longi;
for(i=1;i<=n;i++)s=s+________;
return(sqrt(6*s));}
A)i/iB)i*i
C)1/(i*i)D)1/i/i
A
13.设在主函数中有以下定义和函数调用语句,且fun函数为void类型;正确
的fun函数的首部应为________(要求形参名为b)。
main()
{doubles[10][22];
intn;
∶
∶
fun(s);
∶
∶
}
A)voidfun(doubleb[22])
B)voidfun(doubleb[][22])
C)voidfun(doubleb[][])
D)voidfun(doubleb[22][])
B
14.以下程序的输出结果是________。
voidfun()
{staticinta=0;
a+=2;
printf("%d",a);}
main()
{intcc;
for(cc=1;cc<4;cc++)fun();
printf("\n");}
A)2222B)2468
C)222D)246
C
15.以下函数把b字符串连接到a字符串后面,并返回a中新字符串的长度。
下面的两划线处应分别填入________。
strcen(chara[],charb[])
{intnum=0,n=0;
while(a[num]!
=______)num++;
while(b[n]){a[num]=b[n];num++;________;}
return(num);}
A)'\n'和n++B)'\n'和num++
C)'\0'和n++D)'\0'和num++
C
16.以下程序的输出结果是
#include<>
main()
{chara[]="9";intk;
fun(a);puts(a);}
fun(chars[])
{intx,y;charc;
for(x=0,y=strlen(s)-1;x{c=s[y];s[y]=s[x];s[x]=c;}}
A)1B)9
C)1D)9
A
17.以下程序的输出结果是
#include<>
main()
{chara[]="abcdefghi";intk;
fun(a);puts(a);}
fun(chars[])
{intx,y;charc;
for(x=0,y=(strlen(s)-1)/2;x{c=s[y];s[y]=s[x];s[x]=c;}}
A)ihgfedcbaB)abcdefghi
C)edcbafghiD)ihgfefghi
C
18.以下程序的输出结果是
#include<>
main()
{chara[]="abcdefghi";intk;
fun(a);puts(a);}
fun(chars[])
{intx,y;charc;
for(x=0,y=3;x{c=s[y];s[y]=s[x];s[x]=c;}}
A)ihgfedcbaB)abcdefghi
C)dcbaefghiD)ihgfefghi
C
19.以下程序的输出结果是________。
main()
{intw=5;fun(w);printf("\n");}
fun(intk)
{if(k>0)fun(k-1);
printf("%d",k);}
A)54321B)012345
C)12345D)543210
B
20.以下程序的输出结果是________。
main()
{intw=5;printf("%d\n",fun(w));}
fun(intk)
{intn;
if(k>0)n=n+fun(k-1);
elsen=0;
returnn;}
A)543210B)012345
C)15D)25
D
21.以下程序的输出结果是________。
intd=1;
fun(intp)
{staticintd=5;
d+=p;
printf("%d",d);
return(d);}
main()
{inta=3;printf("%d\n",fun(fun(d)));}
A)61111B)669
C)61212D)6615
C
22.以下程序的输出结果是________。
#include<>
inta[3][3]={1,2,3,4,5,6,7,8,9},b[10];
main()
{f(b,a);
printf("%d\n",b[0]);}
f(ints[],intp[][3])
{s[0]=p[1][1];}
A)1B)4
C)7D)5
D
23.下列程序的输出结果是________。
intt(intx,inty,intcp,intdp)
{cp=x*x+y*y;dp=x*x-y*y;}
main()
{inta=4,b=3,c=5,d=6;
t(a,b,c,d);
printf("%d%d\n",c,d);}
A)169B)43
C)56D)259
C
24.下列叙述中正确的是________。
A)C语言编译时不检查语法
B)C语言的子程序有过程和函数两种
C)C语言的函数可以嵌套定义
D)C语言所有的函数都是外部函数
D
25.以下所列的各函数首部中,正确的是________。
A)voidplay(vara:
Integer,varb:
Integer)
B)voidplay(inta,b)
C)voidplay(inta,intb)
D)voidplay(aasinteger,basinteger)
C
26.以下程序的输出结果是
fun(intx,inty,intz)
{z=x*x+y*y;}
main()
{inta=31;
fun(5,2,a);
printf("%d",a);}
A)0B)29
C)31D)无定值
C
27.以下程序输出的结果是________。
longfun(intn)
{longs;
if(n==1||n==2)s=2;
elses=n-fun(n-1);
returns;}
main()
{printf("%ld\n",fun(3));}
A)1B)2
C)3D)4
A
28.若形参n的值为24,则调用prnt函数后,共输出______行。
voidprnt(intn,intarr[])
{inti;
for(i=1;i<=n;i++)
{printf("%6d",arr[i]);
if(!
(i%5))printf("\n");}
printf("\n");}
A)3B)4
C)5D)6
C
29.请读程序:
#include<>
f(chars[])
{inti=0,p=0;
while(s[i++]!
='\0')p++;
return(p);}
main()
{charstr[10]="ABCDEF";
printf("%d\n",f(str));}
上面程序的输出结果是
A)3B)6
C)8D)10
B
30.以下程序调用findmax函数求数组中值最大的元素在数组中的下标
#include<>
findmax(s,t)
ints[10],t;
{intj,p=0;
for(j=1;jif(s[j]>s[p])___________;
returnp;}
main()
{inta[10],i,k;
for(i=0;i<10;i++)scanf("%d",&a[i]);
k=findmax(a,10);
printf("%d,%d\n",k,a[k]);}
则程序中划线处的正确答案是________。
A)j=pB)p=j
C)j=tD)p=t
B
31.请读以下程序:
#include<>
findmax(s,t)
ints[10],t;
{intj,p=0;
for(j=1;jif(s[j]>s[p])p=j;
returnp;}
main()
{inta[10],i,k;
for(i=0;i<10;i++)scanf("%d",&a[i]);
k=findmax(a,10);
printf("%d,%d\n",k,a[k]);}
则下面的说法中,不正确的是________。
A)程序输出的结果是数组a中最大元素的值和最大元素的下标
B)程序输出的结果是数组a中最大元素的下标和最大元素的值
C)函数findmax中处理的数据的个数由形参t决定
D)函数findmax返回的函数值是数组中最大元素的下标
A
32.请读程序:
#include<>
voidfun(ints[])
{staticintj=0;
do
s[j]+=s[j+1];
while(++j<2);}
main()
{intk,a[10]={2,3,4,5,6};
for(k=1;k<3;k++)fun(a);
for(k=0;k<5;k++)printf("%d",a[k]);}
上面程序的输出结果是_________。
A)56956B)34556
C)57956D)1211456
C
33.请读程序:
#include<>
charfun(charc)
{if(c<='Z'&&c>='A')c-='A'-'a';
return(c);}
main()
{chars[81];intk=0;
gets(s);
while(s[k])
{s[k]=fun(s[k]);putchar(s[k]);k++;}
putchar('\n');}
若运行时从键盘上输入OPENTHEDOOR(表示回车),则上面程
序的输出结果是________。
A)oPENtHEdOORB)openthedoor
C)OPENTHEDOORD)OpenTheDoor
B
34.请读程序:
#include<>
f(intb[],intn)
{inti,r;
r=1;
for(i=0;i<=n;i++)r=r*b[i];
returnr;}
main()
{intx,a[]={2,3,4,5,6,7,8,9};
x=f(a,4);
printf("%d\n",x);}
上面程序的输出结果是________。
A)720B)120
C)24D)6
A
35.请读程序:
#include<>
#include<>
voidfun(charw[],intm)
{chars;inti,j;
i=0;j=m-1;
while(i{s=w[i];w[i]=w[j];w[j]=s;i++;j--;}}
main()
{chara[]="ABCDEFG";
fun(a,strlen(a));
puts(a);}
上面程序的输出结果是________。
A)GFEDCBAB)AGADAGA
C)AGAAGAGD)GAGGAGA
A
36.有以下程序
#inclde<>
main()
{intk=4,m=1,p;
p=func(k,m);printf("%d,",p);
p=func(k,m);printf("%d\n",p);}
func(inta,intb)
{staticintm=0,i=2;
i=m+1;
m=i+a+b;
return(m);}
输出结果是________。
A)6,6B)6,12
C)6,8D)8,8
B
37.请读程序:
#include<>
func(inta,intb)
{intc;
c=a+b;
returnc;}
main()
{intx=6,y=7,z=8,r;
r=func((x--,y++,x+y),z--);
printf("%d\n",r);}
上面程序的输出结果是________。
A)11B)20
C)21D)31
C
38.以下说法中正确的是________。
A)C语言程序总是从第一个定义的函数开始执行
B)在C语言程序中,要调用的函数必须在main()函数中定义
C)C语言程序总是从main()函数开始执行
D)C语言程序中的main()函数必须放在程序的开始部分
C
39.下列程序执行后输出的结果是________。
#include<>
f(inta)
{intb=0;
staticc=3;
a=c++,b++;
return(a);}
main()
{inta=2,i,k;
for(i=0;i<3;i++)
k=f(a++);
printf("%d\n",k);}
A)3B)0
C)5D)4
C
40.下列程序执行后输出的结果是________。
intd=1;
fun(intp)
{intd=5;
d+=p++;printf("%d",d);}
main()
{inta=3;
fun(a);
d+=a++;printf("%d\n",d);}
A)84B)96
C)94D)85
A
41.以下程序的输出结果是________。
#include""
space(charstr[])
{inti,t;charts[81];
for(i=0,t=0;str[i]!
='\0';i+=2)
if(!
isspace(str[i])&&str[i]!
='a')
ts[t++]=toupper(str[i]);
ts[t]='\0';
strcpy(str,ts);}
main()
{chars[81]={"abcdefg"};
space(s);
puts(s);}
A)abcdegB)bcde
C)ABCDED)BCDE
D
42.阅读程序:
#include""
#include""
lengh(chara[],charb[])
{intnum=0,n=0;
while(a[num]!
='\0')num++;
while(b[n]){a[num]=b[n];num++;n++;}
return(num);}
main()
{charstr1[81],str2[81];
gets(str1);gets(str2);
printf("%d\n",lengh(str1,str2));}
运行程序,如果从键盘上输入字符串qwerty和abcd则程序的输出
结果是________。
A)9B)8
C)10D)12
C
43.阅读程序:
#include""
#include""
strl(chara[],charb[])
{intnum=0,n=0;
while(a[num]!
='\0')num++;
for(;b[n];num++,n++)a[num]=b[n];
return(num);}
main()
{charstr1[81],str2[81];
gets(str1);gets(str2);
printf("%d\n",strl(str1,str2));}
运行程序,如果从键盘上输入字符串abcde和abcd则程序的输出
结果是________。
A)9B)8
C)10D)12
A
44.下面程序的输出是________。
fun3(intx)
{staticinta=3;
a+=x;
return(a);}
main()
{intk=2,m=1,n;
n=fun3(k);
n=fun3(m);
printf("%d\n",n);}
A)3B)4
C)6D)9
C
45.下面程序的输出是_________。
intm=13;
intfun(intx,inty)
{intm=3;
return(x*y-m);}
main()
{inta=7,b=5;
printf("%d\n",fun(a,b)/m);}
A)1B)2
C)7D)10
B
46.C语言规定,程序中各函数之间________。
A)既允许直接递归调用也允许间接递归调用
B)不允许直接递归调用也不允许间接递归调用
C)允许直接递归调用不允许间接递归调用
D)不允许直接递归调用允许间接递归调用
A
47.下面程序的输出是________。