3-1 打印图形

题目描述:

打印图形:分别输入整数n、整数m和一个字符串str,要求重复打印str共m次,打印时每行字符个数为n,并在方阵每行开头输出当前行号,行号部分(行号加冒号)占四个字符宽度并靠右对齐(行号部分不占用每行打印的字符个数),如下所示。

输入:

9

5

Computer

输出:

[空格][空格] 1:ComputerC

[空格][空格] 2:omputerCo

[空格][空格] 3:mputerCom

[空格][空格] 4:puterComp

[空格][空格] 5:uter

测试用例:

测试输入期待的输出时间限制内存限制额外进程
测试用例 1以文本方式显示
  1. 5↵
  2. 4↵
  3. Computer↵
以文本方式显示
  1.   1:Compu↵
  2.   2:terCo↵
  3.   3:mpute↵
  4.   4:rComp↵
  5.   5:uterC↵
  6.   6:omput↵
  7.   7:er↵
1秒64M0
测试用例 2以文本方式显示
  1. 4↵
  2. 5↵
  3. Computer↵
以文本方式显示
  1.   1:Comp↵
  2.   2:uter↵
  3.   3:Comp↵
  4.   4:uter↵
  5.   5:Comp↵
  6.   6:uter↵
  7.   7:Comp↵
  8.   8:uter↵
  9.   9:Comp↵
  10.  10:uter↵
1秒64M0
测试用例 3以文本方式显示
  1. 8↵
  2. 1↵
  3. Computer↵
以文本方式显示
  1.   1:Computer↵
1秒64M0
测试用例 4以文本方式显示
  1. 1↵
  2. 2↵
  3. Com↵
以文本方式显示
  1.   1:C↵
  2.   2:o↵
  3.   3:m↵
  4.   4:C↵
  5.   5:o↵
  6.   6:m↵
1秒64M0
测试用例 5以文本方式显示
  1. 4↵
  2. 7↵
  3. C↵
以文本方式显示
  1.   1:CCCC↵
  2.   2:CCC↵
1秒64M0
测试用例 6以文本方式显示
  1. 4↵
  2. 3↵
  3. Com↵
以文本方式显示
  1.   1:ComC↵
  2.   2:omCo↵
  3.   3:m↵
1秒64M0

代码实现: 

#include<stdio.h> 
#include<string.h>
int main()
{
	int n,m;
	char ch[100]="";
	scanf("%d",&n);
	scanf("%d",&m);
	getchar();
	gets(ch);
	int len=strlen(ch);
	int lens=len*m;
	int i,j;
	int num=1;
	for(i=0;i<lens;i++)
	{
		if(i%n==0)
		{
			printf("%3d:",num++);
		}
		printf("%c",ch[i%len]);
		if(i%n==n-1)
		{
			printf("\n");
			
		}
	}
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值