
2052
這道題意思是給一個(gè)矩形的長(zhǎng)和寬,輸出這個(gè)矩形。有趣的是,輸出的這個(gè)矩形長(zhǎng)寬實(shí)際占位會(huì)各比題目輸入的長(zhǎng)寬多2個(gè)單位。
這里有兩種做法。
第一種:定義兩個(gè)字符數(shù)組,一個(gè)都為"-",另一個(gè)都為" ",根據(jù)給出的寬一行一行輸出。代碼如下:
#include "iostream"
using namespace std;
int main()
{
int n,m,i;
while(cin>>n>>m)
{
char a[75]={'\0'};
char b[75]={'\0'};
for(i=1;i<=n;i++)
{
a[i]='-';
b[i]=' ';
}
cout<<'+';
for(i=1;i<=n;i++)
cout<<a[i];
cout<<'+'<<'\n';
while(m--){
cout<<'|';
for(i=1;i<=n;i++)
cout<<b[i];
cout<<'|'<<'\n';
}
cout<<'+';
for(i=1;i<=n;i++)
cout<<a[i];
cout<<'+'<<'\n';
cout<<'\n';
}
return 0;
}

1.png
第二種:
定義一個(gè)二維字符數(shù)組,根據(jù)長(zhǎng)和寬往數(shù)組里面賦值。

.
代碼如下:
#include "iostream"
using namespace std;
int main()
{
int n,m,i,j;
while(cin>>n>>m)
{
char a[77][77]={'\0'};
a[0][0]=a[0][n+1]=a[m+1][0]=a[m+1][n+1]='+';
for(i=1;i<=n;i++)
a[0][i]=a[m+1][i]='-';
for(i=1;i<=m;i++)
a[i][0]=a[i][n+1]='|';
for(j=0;j<=m+1;j++)
{
if(j>0) cout<<'\n';
for( i=0;i<=n+1;i++)
cout<<a[j][i];
}
cout<<'\n';
cout<<'\n';
}
return 0;
}

2.png