문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다. S에는 QR Code "alphanumeric" 문자만 들어있다.
QR Code "alphanumeric" 문자는 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ$%*+-./: 이다.
#include <stdio.h>
#include <string.h>
int main(){
int test,N = 0;
char s[20];
scanf("%d",&test); // 테스트 케이스 횟수
for (int i = 0; i < test; i++){
scanf("%d %s",&N,&s);
for (int j = 0; j < strlen(s); j++){ // 입력받은 N값만큼 문자들을 반복한다
for (int k = 0; k < N; k++){
printf("%c",s[j]);
}
}
printf("\n");
}
return 0;
}
저번 글에도 말했듯이 몇줄 줄여서 다시 써보자면
#include <stdio.h>
int main(){
int test_case,N = 0;
char s[20];
scanf("%d",&test_case);
for (int i = 0; i < test_case; i++){
scanf("%d %s",&N,&s);
for (int j = 0; s[j] != '\0'; j++){ // strlen을 쓰지 않고 이렇게 변경 가능!
for (int k = 0; k < N; k++){
printf("%c",s[j]);
}
}
printf("\n");
}
return 0;
}