用C或C++代码实现如下的矩阵输出,高手们,帮帮忙!

2024-12-20 03:54:52
推荐回答(3个)
回答1:

//矩阵填写,规则:从第一列向下填写,到上下边界转换方向,并向右跳到下一列

 

#include "stdafx.h"
int sgn(double d)          //得到数的正负号
{
 if(d<0) 
  return -1;
 else if (d==0)
  return 0;
 else
  return 1;
}

int main()
{
 int jz[5][4];
 int i=0,j=0;
    int l=1;
 for (int k=0;k<20;k++)
 {
        jz[i][j]=k;        
  j+=l;
  if (j==-1 || j==4)               //到边界
  {
   j=j-sgn(j);       
   l=-l;                               //转换填写方向
   i++;
  }
 }
 
 for (i=0;i<4;i++)
 {
  for (j=0;j<5;j++)
  {
   printf("%2d  ",jz[j][i]);
  }
  printf("\n");
  

 }
 return 0;
}

若满意请及时采纳,谢谢

回答2:

#include
int main()
{
int i,j,k=0;
int data[4][5];
for(i=0;i<5;i++)
{
for(j=0;j<4;j++)
{
data[j][i]=k++;
}
}
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
{
printf("%-3d",data[i][j]);
}
printf("\n");
}
return 0;
}

 

回答3:

void mian(){
int i;
for(i=0;i<4;i++){
peintf("%2d%2d%2d%2d\n",i+1-1,7-i,8+i,15-i,16+i);
}
}