Give you the width and height of the rectangle,darw it.
Inputafter each case, you should a blank line.
3 2
+---+ | | | | +---+
这个题的意思是每组数据的第一个是m个-,第二个是n个|,这样一来就很好理解了。我最先想到的就是利用for循环,以+号开头,把后面的依次多用几个for循环就可以解出来,代码如下:
#include <stdio.h>
#include <stdlib.h>
#include<string.h>
int main()
{
int i,j,n,m;
char s[1000][1000];
while(~scanf("%d%d",&m,&n))
{s[0][0]='+';s[0][m+1]='+';
s[n+1][0]='+';s[n+1][m+1]='+';
for(i=1;i<=m;i++)
{
s[0][i]='-';
s[n+1][i]='-';
}
for(i=1;i<=n;i++)
{
s[i][0]='|';
s[i][m+1]='|';
}
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
s[i][j]=' ';
}
#include <stdlib.h>
#include<string.h>
int main()
{
int i,j,n,m;
char s[1000][1000];
while(~scanf("%d%d",&m,&n))
{s[0][0]='+';s[0][m+1]='+';
s[n+1][0]='+';s[n+1][m+1]='+';
for(i=1;i<=m;i++)
{
s[0][i]='-';
s[n+1][i]='-';
}
for(i=1;i<=n;i++)
{
s[i][0]='|';
s[i][m+1]='|';
}
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
s[i][j]=' ';
}
}
for(i=0;i<=n+1;i++)
{
for(j=0;j<=m+1;j++)
{
printf("%c",s[i][j]);
}
printf("\n");
}
printf("\n");}
return 0;
}
for(i=0;i<=n+1;i++)
{
for(j=0;j<=m+1;j++)
{
printf("%c",s[i][j]);
}
printf("\n");
}
printf("\n");}
return 0;
}