点击这里更换您喜欢的皮肤wtboj 首页
请点击这里登入noios   首页 入门 c++讲义 入门教程视频 金牌教程 入门视频 站务 公告 | 题库 记录 竞测 测试 闯关 作业 排名 团队 讨论 | 换肤 | 登入 注册  
News >>   新增功能:各团队管理员可以发布本团队作业了 ()

讨论 Discussion
 
54188
四年级学案:
1.作业点评:
1. 打印回形阵。
输入:
5
输出:
1 1 1 1 1
1 2 2 2 1
1 2 3 2 1
1 2 2 2 1
1 1 1 1 1

参考程序1:
#include<iostream>
using namespace std;
int main(){
  int i,j,t,p,k,n;
  int a[100][100]={0};
  cin>>n;
  k=n/2+n%2;//求出环形阵的最大数字。
 
  for(t=1;t<=k;t++){//循环每一层环形的行或列出现的数字
   for(i=t;i<=n+1-t;i++){//循环每一层环形的各行或列的数字的出现个数
      a[t][i]=t;//上行
      a[n+1-t][i]=t;//下行
      a[i][t]=t;//左列
      a[i][n+1-t]=t;//右列
}
  }
  for(i=1;i<=n;i++){
    for(j=1;j<=n;j++)cout<<a[i][j]<<" ";
    cout<<endl;
}
return 0;
}

参考程序2:
#include<iostream>
using namespace std;
int main(){
int i,j,t,k,n;
int a[100][100]={0};
cin>>n;
k=( n+1)/2;
for(t=1;t<=k;t++)
for(i=t;i<=n+1-t ;i++)
for(j=t;j<=n-t+1;j++)a[i][j]=t;

for(i=1;i<=n;i++){
for(j=1;j<=n;j++)cout<<a[i][j]<<" ";
cout<<endl;
}
return 0;
}

( )

此主题无回复显示
发布讨论主题 回复讨论主题
 Copyright wtboj © 2005-2006. www.wutuobang.date Powered by wtboj 关于 联系 帮助
 wtboj Information ---- Total Users : 1365 | Online Users / Processes : 0 / 44 | Processed Time : 47 ms | Server Time : 2026/1/9 8:41:51