#include <stdio.h>
#include <string.h>
char a[20002];
int main(){
int c,b,cnt=0,g=0,time=0; scanf("%d\n",&c); scanf("%d\n",&b); gets(a);
int n=strlen(a); long long u=b*n/c;
for(long long i=1;i<=u;i++){
printf("%3d:",++cnt);
for(int j=1;j<=c;j++){
if(g>=n) g=0;
printf("%c",a[g++]);
}
printf("\n");
}
if(b*n%c!=0) printf("%3d:",++cnt);
for(long long i=1;i<=b*n%c;i++){
if(g>=n) g=0;
printf("%c",a[g++]);
}
printf("\n");
}
打印图形:分别输入整数n、整数m和一个字符串str,要求重复打印str共m次,打印时每行字符个数为n,并在方阵每行开头输出当前行号,行号部分(行号加冒号)占四个字符宽度并靠右对齐(行号部分不占用每行打印的字符个数),如下所示。
输入:
9
5
Computer
输出:
[空格][空格] 1:ComputerC
[空格][空格] 2:omputerCo
[空格][空格] 3:mputerCom
[空格][空格] 4:puterComp
[空格][空格] 5:uter
输入的两个数分别是c和b,n是字符串长度
应该是b*c/n,不是b*n/c
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632