//给第一列赋值t,即以前行的最后一列Р?}Р?printf("矩阵变换后:\n");Р?for(i=0;i<3;i++) Р?{ for(j=0;j<3;j++) Р printf("%5d",a[i][j]);Р printf("\n");Р?}Р?return 0;Р}Р运行结果:Р5、设计程序sy4-5.c,从键盘输入m的值(2<=m<=9),并用双重循环给数组赋值,在m行m列的二维数组中存放如下所示的数据,并将结果输出在显示上。Р例如:输入3 输入5Р则输出: 则输出: Р1 2 3 1 2 3 4 5Р2 4 6 2 4 6 8 10 Р3 6 9 3 6 9 12 15Р 4 8 12 16 20Р 5 10 15 20 25Р算法分析:Р分析:m的值是不定的,所以可以申明一个二维数组int a[10][10],当m=3时,只用前三行三列,当m=5时,就只用前五行五列;元素a[i][j]的值和他的行列下标可找到规律如下:每行的第0列元素a[i][0]=i+1;除第0列元素其它元素a[i][j]=a[i][0]*(j+1)。Р参考答案:Р#include<stdio.h>Рvoid main()Р{Р?int a[10][10],i,j,m;Р?printf("Input m:");Р?scanf("%d",&m);Р?for(i=0;i<m;i++) /*初始化第一列元素*/Р a[i][0]=i+1; Р?for(i=0;i<m;i++) /*处理其余元素:为第0列元素*(j+1)*/Р for(j=1;j<m;j++)Р a[i][j]=a[i][0]*(j+1);Р?for(i=0;i<m;i++) /*输出矩阵*/Р?{ for(j=0;j<m;j++)Р printf("%5d",a[i][j]);Р printf("\n");Р?}Р}Р运行结果: