C语言--叠筐

输入一个三元组 外框尺寸n,中心花色,外框花色

#include <iostream>
#include <cstdio>

using namespace std;
char matrix[80][80];

int main()
{
    int n,i;
	char a,b;
	bool firstCase=true;         //第一组数的标志A
	scanf("%d %c %c",&n,&a,&b);
	if(firstCase==true)
		firstCase=false;
	else
		printf("/n");            //第一组数结束后 换行交换使用第二组数B
	for(i=0;i<=n/2;i++){         //(i,i)为每一圈左上角
		int j=n-i-1;			//(j,j)为每一圈右下角
		int length=n-2*i;
		char c;					//求当前填充字符c是第几组数
		if((n/2-i)%2==0)        //离中心地区奇偶数来判断c为何值
			c=a;
		else
			c=b;
		for(int k=0;k<length;k++){  //对每一轮的四个边进行赋值c   
			matrix[i][i+k]=c;
			matrix[i+k][i]=c;
			matrix[j][j-k]=c;
			matrix[j-k][j]=c;
		}
	}
	if(n!=1){							//消去圈的四个顶角
		matrix[0][0]=' ';
		matrix[0][n-1]=' ';
		matrix[n-1][0]=' ';
		matrix[n-1][n-1]=' ';
	}
	for( i=0;i<n;i++){					//打印
		for(int j=0;j<n;j++)
				printf("%c",matrix[i][j]);
	printf("\n");
	}

		
	return 0;
		
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
11-26 15:46
已编辑
字节国际 电商后端 24k-35k
点赞 评论 收藏
分享
拒绝无效加班的小师弟很中意你:求职意向没有,年龄、课程冗余信息可以删掉,需要提升项目经历。排版需要修改。
点赞 评论 收藏
分享
joe2333:怀念以前大家拿华为当保底的日子
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务