if(i!=k)
{ t=a[i];a[i]=a[k];a[k]=t;} }
for (i=0;i<4;i++)
printf(\ \}
5. 阅读下面程序,给出输出结果。 #include
int i,j,m[2]={0}; for(i=0;i<2;i++) for(j=i;j<2;j++) m[j]=m[i]+1;
printf(\}
6.阅读下面程序,给出输出结果。
#include
char s1[]=\ int i;
for (i=0;s1[i]!='\\0?&&s2[i]!='\\0?; i++) if(s1[i]<=s2[i])
printf(\}
7.阅读下面程序,给出输出结果。
#include
int a[3][3]={1,2,3,4,5,6,10,8,9},i,s1=0,s2=0; for(i=0;i<3;i++) {
s1+=a[i][i]; s2+=a[i][2-i]; }
printf(“s1=%d,s2=%d\\n”,s1,s2); }
8.阅读下面程序,给出输出结果。
#include
}
9.阅读下面程序,给出输出结果。
#include
10. 阅读下面程序,给出输出结果。
#include
int i, j, x=0;
int a[7][7]={0}; for (i=0; i<3; i++ )
for (j=0;j<3; j++) a[i][j]=2*(j+1)-1; for (i=0; i<7; i++) if (i==j) x+=a[i][j];
printf(\}
11.运行下面程序,从键盘输入以下数据:1、6、9、12、1、4。给出输出结果。
#include
int a[3][2],i,j,max,row,col; for(i=0;i<3;i++) for(j=0;j<2;j++)
scanf(\ max=a[0][0]; row=0; col=0;
for(i=0;i<3;i++) for(j=0;j<2;j++) if(max
max=a[i][j]; row=i; col=j; }
printf(\}
12. 阅读下面程序,给出输出结果。
#include
int a[3][4]={1,2,3,4,2,3,4,5,3,4,5,6},b[4][3],i,j ; for(i=0;i<4;i++) for(j=0;j<3;j++) b[i][j]=a[j][3-i]; for(i=0;i<4;i++)
printf(\ \}
13. 阅读下面程序,给出输出结果。
#include
int i,a[8]={1,1}; for(i=0;i<8;i++) {
if(i>=2)
a[i]=a[i-1]+a[i-2]; if(i%2)
printf(\ \ }
printf(\}
三、填空题
1. 下面程序的功能是打印杨辉三角形的前10行,请将程序填写完整。
#include
int c[10][10],i,j; for(i=0;i<10;i++) {
c[i][0]=1;
【1】 }
for(i=2;i<10;i++) for(j=1;j
(for(j=0;【3】;j++)
printf(\ printf(\ }
printf(\}
2. 下列程序将一个二维数组a的行和列的元素互换,存放到数组b中,并将数组b输出。
例如, 1 2 3 4 5 6
则a的行列互换后得到a的转置b为: 1 4 2 5 3 6
请将程序填写完整。 #include
int i,j;
int a[2][3]={1,2,3,4,5,6}; 【1】
for(i=0;i<3;i++) for(j=0;j<2;j++) 【2】 for(i=0;i<3;i++) for(【3】)
printf(\ }
3. 将数组a中小于平均值的元素显示出来,请将程序填完整。
#define N 5 void main() {
int i,a[N];float s=【1】,aver; for(i=0;i scanf(\ for(i=0;i aver=s/N; for(i=0;i printf(\ \} 4. 下面程序判断字符串是否是回文。所谓回文是指如果字符串正读和反读都一样。请将程 序填完整。 #include char s[100]; int i,n; printf(\输入字符串:\\n\ gets(s); n=【1】; for(i=0;i if(s[i]!= 【2】) break; if(【3】) printf(\是回文!\\n\ else printf(\不是回文!\\n\} 5. 下面程序应用折半查找法从存有10个整数的升序数组a中对关键字m进行查找,如 果找到则输出“OK”,否则输出“NO”,请填空。 #include int a[10],m,low=0,high=9,mid; for(i=1;i<10;i++) scanf(\ scanf(\ while (low<=high) { mid=(low+high)/2; if( ma[mid] ) low=【2】; else break; } if (【3】) printf(\ else printf(\} 四、编程题 1.下面程序实现将输入的无序字符串按照26个字母的顺序重新排序并输出。用选择法实 现对字符串的排序,请将程序补充完整。 #include