a[j])">

C语言第六章数组习题答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第六章 数组

习题答案

2、0 4

3、0 6

4、&a[i] i%4==0 printf("\n");

5、i+j==3_ a[i][j]

6、12

7、a[i][j]+b[i][j] printf(“\n ”)

8、按行存放

9、( a[i]>a[j])

10、将串str2复制到串str1中后再将串str3连接到串str1之后

三、阅读题

1、如右图所示

2、AQM

3、AzyD

4、9198

5、如右图所示

6、92

7、1,2,5,7,

8、2

9、v1=5,v2=8,v3=6,v4=1

10、a*b*c*d*

四、编程题

1(1)选择法排序

#include

void main( )

{int i,j,n=10,p,a[10];int temp;

for(i=0;i

printf("\n 原始的一维数组是:\n");

for(i=0;i

{ p=i; /*假定第i 趟中最小数的位置是i*/

for(j=i+1;j

if(a[j]

if(i!=p) {temp=a[i];a[i]=a[p];a[p]=temp;}

}

printf("\n排序后的一维数组:\n");

for(i=0;i

}

(2)比较法排序

#include

void main( )

{int i,j,n=10,p,a[10];int temp;

for(i=0;i

printf("\n 原始的一维数组是:\n");

for(i=0;i

for(i=0;i

for(j=i+1;j

if(a[i]>a[j]) {temp=a[i];a[i]=a[j];a[j]=temp;}

printf("\n排序后的一维数组:\n");

for(i=0;i

}

2、以在十个数据(由小到大排列的十个数)中插入一个数为例

#include

void main( )

{int a[11],i,n=10,k; int point;

printf("\n 请输入原始数据:\n");

for(i=0;i

for(i=0;i

printf("\n请输入要插入的数");

scanf("%d",&k); /*输入要插入的数据*/

for(i=0;i

if(a[i]>k) {point=i; break;}

if(i!=n)

{for(i=n;i>point;i--) a[i]=a[i-1];

a[point]=k;} /*从后向前方式*/

else

a[n]=k;

printf("插入后的数是:\n");

for(i=0;i

}

3、#include

int main()

{int i,j,upp,low,dig,spa,oth;

char text[3][80];

upp=low=dig=spa=oth=0;

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

{ printf("please input line %d:\n",i+1);

gets(text[i]);

for (j=0;j<80 && text[i][j]!='\0';j++)

{if (text[i][j]>='A'&& text[i][j]<='Z')

upp++;

else if (text[i][j]>='a' && text[i][j]<='z')

low++;

else if (text[i][j]>='0' && text[i][j]<='9')

dig++;

else if (text[i][j]==' ')

spa++;

else

oth++;

}

}

printf("\nupper case: %d\n",upp);

printf("lower case: %d\n",low);

printf("digit : %d\n",dig);

printf("space : %d\n",spa);

printf("other : %d\n",oth);

return 0;

}

5、以5个数逆序存放为例,将n值修改,则可实现n个数逆序存放

#include

#define n 5 //n为符号常量,值为5

void main( )

{int i,a[n],t;

for(i=0;i

for(i=0;i

for(i=0;i

printf("%5d",a[i]);

printf("\n");

}

6、杨辉三角

#include

void main( )

{int i,j,a[10][10];

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

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

if(j==0||i==j)a[i][j]=1;

else a[i][j]=a[i-1][j]+a[i-1][j-1];

相关文档
最新文档