c语言习题册及答案 下载本文

.

6.在数组内实现逆序输出。 #include void main()

{ char a[100]; char b; int i=0; int n; gets(a); n=strlen(a);

while( 【10】 ) i

【11】 ; a[i]=a[n-1-i] a[n-1-i]=b; i++; } a[n]='\\0';

printf(\7.判断字符串是否为回文。 #include void main()

{ char a[100];

int n;int i=0;int flag=0; gets(a); n=strlen(a); while(i

{ 【12】 if(a[i] == a[n-1-i]); flag=1; else

{ flag=0;

【13】 ; } break

i++; }

if(flag==1) printf(\

else printf(\8.在数组内指定位置i插入元素x #include void main()

{ int a[11],i,j,x; for(i=0;i<10;i++) scanf(\

.

.

scanf(\

for(j=9; 【14】 ;j--) j>=i

【15】 ; a[j+1]=a[j] a[i]=x;

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

printf(\9.在数组内删除指定元素x #include void main()

{ int a[10],i,j,x; for(i=0;i<10;i++) scanf(\ scanf(\

for(i=0;a[i]!=x;i++) 【16】 ;

for(j=i;j<=8;j++)

【17】 ; a[j]=a[j+1] for(i=0;i<9;i++)

printf(\

10.用折半查找法在有序数组中查找指定元素x #include void main()

{ int a[10],x,i,start,end,flag=0; printf(\输入10个有序数:\\n\ for(i=0;i<10;i++) scanf(\

printf(\ scanf(\

for(start=0,end=9; 【18】 ;) start<=end { 【19】 ; i=(start+end)/2 if (x==a[i])

{ flag=1; break; }

else if (x>a[i]) 【20】 ; start=i+1 else end = i-1; } if(flag==1)

printf(\ else

printf(\

.