[SWEA] 4751 다솔이의 다이아몬드 장식 C언어
#include <stdio.h>
int T;
char data[60];
int length;
int main(void) {
scanf("%d", &T);
for (int tc = 0; tc < T; tc++) {
scanf("%s", &data); //문자열 입력
length = 0;
while (data[length] != '\0') length++; // 문자열 길이
// 1번줄
printf("..#");
for (int i = 0; i < length - 1; i++) {
printf("...#");
}
printf("..\n");
//2번줄
for (int i = 0; i < length * 2; i++) {
printf(".#");
}
printf(".\n");
//3번줄
for (int i = 0; i < length; i++) {
printf("#.%c.", data[i]);
}
printf("#\n");
//4번줄
for (int i = 0; i < length * 2; i++) {
printf(".#");
}
printf(".\n");
//5번줄
for (int i = 0; i < length; i++) {
printf("..#.");
}
printf(".\n");
}
return 0;
}
반복되는 문자의 특징을 잡아 출력한다.
초기화가 중요하기 때문에 length를 for 안에서 한번 초기화 한다.