C语言程序设计答案杜友福版 下载本文

if(fz==0) }

12. 在一个二维数组中形成并输出如下矩阵: 1 1 1 1 1 2 1 1 1 1 A= 3 2 1 1 1 4 3 2 1 1 5 4 3 2 1 #include <> #define N 5 void main() {

int j,i,a[N][N]; for(i=0;i

for(j=0;j

printf(\

if(i<=j)

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

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

else

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

}

for(i=0;i

{

for(j=0;j

printf(\

printf(\ }

13. 已知A是一个3╳4的矩阵,B是一个4╳5的矩阵,编程求A╳B得到的新矩阵C,并输出C矩阵。

#include <> void main() {

int j,i,k,a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};

int b[4][5]={3,2,1,5,4,4,3,2,5,1,2,3,5,4,1,7,8,5,6,9},c[3][5]; printf(\ for(i=0;i<3;i++)

{ }

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

printf(\

printf(\

}

printf(\ for(i=0;i<4;i++)

{

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

printf(\

printf(\

}

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

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

{

c[i][j]=0; for(k=0;k<4;k++)

c[i][j]+=a[i][k]*b[k][j]; }

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

{

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

printf(\

printf(\ }

14. 编程输出两个字符串中对应位置上相同的字符。 #include <> void main() { int i;

char a[81]=\ char b[81]=\ printf(\ printf(\ printf(\ i=0;

while(a[i]!='\\0' && b[i]!='\\0')

{ }

if(a[i]==b[i])

printf(\

i++; }

printf(\ }

15. 设有一字符串已按升序排列在字符数组a中,请将另一字符串b中的字符按升序的规律插到数组a中。 #include <> #include \ void main() {

int i,j,k;

char a[81]=\ char b[81]=\ printf(\ printf(\ i=0;

while(b[i]!='\\0')

{

j=0;

while(a[j]

j++;

k=strlen(a); while(k>=j)

{ a[k+1]=a[k];k--; }

a[j]=b[i]; i++;