描述:给一个整数n,输出n∗n的蛇形矩阵。
输入描述:向数组输入n*n个元素。
输出描述:输出n行,每行包含n个整数,用空格分隔开相邻的两个数。
思路:1.先定义一个a[n][n]的数组,利用for循环语句向数组输入n*n个元素;
2.用 if 限定条件 限定为偶数的行数;
3.分别输出为奇数行和偶数行的数组元素(偶数行数组元素得反序输出);
注意:数组下标从零开始;
关键点:偶数行反序输出;
代码如下:
#include<stdio.h>
int main()
{
int n,i,j;
printf("请输入行列数:");
scanf("%d",&n);
int a[n][n];
printf("请输入数据:");
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
scanf("%d",&a[i][j]);//输入数组元素
}
}
for(i=0;i<n;i++){
for(j=0;j<n;j++){
int t=0;
if((i+1)%2==0)
printf("%d ",a[i][n-j-1]); //偶行反序输出
else
printf("%d ",a[i][j]); //奇数行正序输出
if(j==n-1)
printf("\n"); //每一列 数满n 换行
}
}
return 0;
}
代码运行结果如下:
总结:今天的出题与解题就到这啦,有不会的小伙伴们可以评论区发表评论,我会一一解答的!
感谢您的阅读!