配色: 字号:
C语言复杂程序部分模拟试题
2012-05-24 | 阅:  转:  |  分享 
  
C语言复杂程序部分模拟试题

[1].下面函数用来求出两个整数之和,并通过形参传回两数相加之和值,请填空。



intadd(intx,inty,____intz__________)

{z=x+y;}



[2].下面程序的功能是将字符串a下标值为偶数的元素由小到大排序,其它元素不变。请填空。

#include"stdio.h"

main()

{chara[]="labchmfye",t;

inti,j;

for(i=0;i<7;i+=2)

for(j=i+2;_____j<9_________;j++)

if(__(a[I]>a[j])&&(j%2==0)____________)

{t=a[i];a[i]=a[j];a[j]=t;j++;}

puts(a);putchar(''\n'');}



[3].以下程序的输出结果是__ga______。

main()

{chara[]="programming",b[]="language";

charp1=a,p2=b;

inti;

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

if((p1+i)==(p2+i))printf("%c",(p1+i));}



[4].以下程序运行后,输出结果是__a=2,b=1______。

#include

{intx=1,y=0,a=0,b=0;

switch(x)

{case1:switch(y)

{case0:a++;break;

case1:b++;break;}

case2:a++;b++;break;

case3:a++;b++;}

printf("\na=%d,b=%d",a,b);}



[5].函数pi的功能是根据以下近似公式求π值,请在下面的函数中填空,完成求π的功能。

(ππ)/6=1+1/(22)+1/(33)+…+1/(nn)

#include

doublepi(longn)

{doubles=0.0,m;longi;

for(i=1;i<=n;i++){m=1.0/(ii);s=______________;}

return(sqrt(6s));}



[6].以下程序运行后,如果从键盘上输入:

book<回车>

book<空格><回车>



则输出结果是________。

#include

main()

{chara1[80],a2[80],s1=a1,s2=a2;

gets(s1);gets(s2);

if(!strcmp(s1,s2))printf("");

elseprintf("#");

printf("%d\n",strlen(strcat(s1,s2)));}



[7].以下程序运行后,输出结果是__x=8______。

main()

{intj,k,x=0;

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

{x++;

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

{if(k%2)continue;

x++;}

x++;}

printf("x=%d\n",x);}



[8].以下程序运行后的输出结果是__10010______。

main()

{inty=18,i=0,j,a[8];

do

{a[i]=y%2;i++;

y=y/2;

}while(y>=1);

for(j=i-1;j>=0;j--)printf("%d",a[j]);

printf("\n");}



[9].下面程序的功能是将字符串a下标值为偶数的元素由小到大排序,其它元素不变。请填空。

#include"stdio.h"

main()

{chara[]="labchmfye",t;

inti,j;

for(i=0;i<7;i+=2)

for(j=i+2;____j<9__________;j++)

if(_(a[I]>a[j])&&(j%2==0)_____________)

{t=a[i];a[i]=a[j];a[j]=t;j++;}

puts(a);putchar(''\n'');}



[10].以下程序的功能是从键盘上输入一行字符并存入一个字符数组中,然后输出该字符串,请填空。

#include"stdio.h"

main()

{charstr[81],sptr;

inti;

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

{str[i]=getchar();

if(str[i]==''\n'')break;}

str[i]=______________;

sptr=str;

while(sptr)putchar(sptr______________);}



[11].下面程序能找出数组中最大值和该值所在的元素下标,数组元素值从键盘输入,请填空。

main()

{intx[10],p1,p2,k;

for(k=0;k<10;k++)scanf("%d",x+k);

for(p1=x,p2=x;p1-x<10;p1++)

if(p1>p2)p2=______________;

printf("MAX=%d,INDEX=%d\n",p2,______________);}



[12].下面程序把从终端读入的10个整数以二进制方式写到一个名为bi.dat的新文件中,请填空。

#include"stdio.h"

FILEfp;

main()

{inti,j;

if((fp=fopen(_”bi.dat”_______,"wb"))==NULL)exit(0);

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

{scanf("%d",&j);

fwrite(&j,sizeof(int),1,__fp______);

}

fclose(fp);

}



[13].以下程序是实现输出x,y,z三个数中的最大者。

main()

{ intx=4,y=6;z=7;

intu,____v_____;

if(x>y) u=x;elseu=y;

if(u>z) v=u;else____v=z__________;

printf("themaxis%d",v);}



[14].下面程序的功能是从键盘输入的10个整数中,找出第一个能被7整除的数,若找到,打印此数后退出循环;若未找到,打印"notexist"。请填空。

main()

{inti,a;

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

{scanf("%d",&a);

if(a%7==0){printf("%d",a);____break__________;}

}

if(i==11)printf("notexist\n");}



[15].以下程序运行后,如果从键盘上输入:

book<回车>

book<空格><回车>



则输出结果是________。

#include

main()

{chara1[80],a2[80],s1=a1,s2=a2;

gets(s1);gets(s2);

if(!strcmp(s1,s2))printf("");

elseprintf("#");

printf("%d\n",strlen(strcat(s1,s2)));}



[16].设有以下结构类型说明和变量定义,则变量a在内存所占字节数是____22__________。

structstud

{charnum[6];

ints[4];

doubleave;

}a,p;



[17].下面程序能找出数组中最大值和该值所在的元素下标,数组元素值从键盘输入,请填空。

main()

{intx[10],p1,p2,k;

for(k=0;k<10;k++)scanf("%d",x+k);

for(p1=x,p2=x;p1-x<10;p1++)

if(p1>p2)p2=______________;

printf("MAX=%d,INDEX=%d\n",p2,______________);}



[18].以下程序可计算10名学生1门课程的平均分,请填空。

floataverage(floatarray[10])

{ inti;floataver,sum=array[0];

for(i=1;i<10;i++)sum+=array[i];

aver=sum/10; returnaver;}

main()

{ floatscore[10],aver;inti;

for(i=0;i<10;i++)scanf("%f",____&score[i]__________);

aver=_____average(score)_________;

printf("averagescoreis%5.2f\n",aver);}



[19].以下fun函数的功能是累加数组元素中的值。n为数组中元素的个数,累加的和值放入x所指的存储单元中,请填空。

fun(intb[],intn,intx)

{intk,r=0;

for(k=0;______________;k++)r=r+b[k];

______________=r;}



[20].下面程序由终端键盘输入字符,存放到文件a.dat中,用!结束输入,请填空。

main()

{ FILE fp;charch;

if((fp=fopen("a.dat","w"))==NULL)

{printf("cannotopen\n");exit(0);}

printf("Enterdata:\n");

while(___ch=getchar()!=’!’_______________)fputc(___ch,fp___________);

fclose(fp);}



[21].函数fun的功能是使一个字符串按逆序存放,请填空。

voidfun(charstr[])

{charm;inti,j;

for(i=0,j=strlen(str);i<____j-1__________;i++,j--)

{m=str[i];str[i]=____str[j-1]__________;str[j-1]=m;}





献花(0)
+1
(本文系一片玉简首藏)