题目描述:
在一行中给出正方形N(3<=N<=20),和组成正方形的在字符C,间隔一个空格。
输出行数是列数的50%;
样例:
aaaaaaaaaa
a a
a a
a a
aaaaaaaaaa
答案:
#include <cstdio>
int main()
{
int col,row; //,col为行数 ,row为列数
char c;
scanf("%d %c", &row, &c);
if(row%2 == 1) col = row/2 +1;
else col = row/2;
//第一行打印row个c字符
for(int i=0; i<row; i++)
{
printf("%c", c);
}
printf("\n");
//第2—col-1行,分别在第一列和地row列打印c字符
for(int t=2; t<col; t++){
printf("%c", c); //每行第一个字符打印c
for(int k=0; k<row-2; k++){
printf(" "); //row-2个空格
}
printf("%c\n", c); //每行最后一个字符打印c
}
//最后一行打印row个c字符
for(int i1=0; i1<row; i1++)
{
printf("%c", c);
}
printf("\n");
return 0;
}
演示: