728x90
반응형
(나)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
#include<stdio.h>
#include<limits.h>
void printStar(int low, int num) {
if (num == 1) {
for (int i = low; i>=1; i-=2) {
int k = (low - i)/2;
for (int j = 1; j <= k; j++) {
printf(" ");
}
for (int j = 1; j <= i; j++) {
printf("*");
}
printf("\n");
}
}
else {
for (int i = low; i >= 1; i -= 2) {
int k = (low - i) / 2;
for (int j = 1; j <= k; j++) {
printf(" ");
}
for (int j = 1; j <= i; j++) {
printf("*");
}
printf("\n");
}
for (int i = 3; i <= low; i += 2) {
int k = (low - i) / 2;
for (int j = 1; j <= k; j++) {
printf(" ");
}
for (int j = 1; j <= i; j++) {
printf("*");
}
printf("\n");
}
}
}
int main() {
//1
char name[100];
printf("이름을 입력하세요 ");
scanf_s("%[^\n]s", name,100);
printf("내 이름은 %s입니다.\n", name);
//2
printf("별의 개수를 입력하세요.");
int num;
while (true) {
scanf_s("%d", &num);
if (num >0 && num % 2 == 1) {//짝수일때
break;
}
else {
printf("홀수를 입력하세요.\n");
}
}
printf("입력한 별의 개수는 %d입니다.\n",num);
//3
printf("별삼각형 개수를 입력하세요 ");
int star;
while (true) {
scanf_s("%d", &star);
if (star == 1 || star == 2) {
break;
}
else {
printf("개수는 1개 또는 2이어야 합니다.\n");
}
}
printf("입력한 삼각형의 개수는 %d개입니다.\n", star);
//4
printStar(num, star);
}
|
cs |
(다)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
#include<stdio.h>
#include<limits.h>
void reverseStar(int n) {
for(int i = n; i>=1; i -= 2) {
int t = (n - i) / 2;
for (int j = 1; j <= t; j++) {
printf(" ");
}
for (int j = 1; j <= i; j++) {
printf("*");
}
for (int j = 1; j <= t; j++) {
printf(" ");
}
printf("\n");
}
}
void butterfly(int n) {
for (int i = 1; i <= n / 2; i++) {
for (int j = 1; j <= i; j++) {
printf("*");
}
int t = n - (2 * i);
for (int j = 1; j <= t; j++) {
printf(" ");
}
for (int j = 1; j <= i; j++) {
printf("*");
}
printf("\n");
}
for (int i = 1; i <= n; i++) {
printf("*");
}
printf("\n");
for (int i = n/2; i >=1; i--) {
int t = n - (2 * i);
for (int j = 1; j <= i; j++) {
printf("*");
}
for (int j = 1; j <= t; j++) {
printf(" ");
}
for (int j = 1; j <= i; j++) {
printf("*");
}
printf("\n");
}
}
int main() {
//1
char name[100];
printf("이름을 입력하세요 ");
scanf_s("%[^\n]s", name,100);
printf("내 이름은 %s입니다.\n", name);
//2
printf("별의 개수를 입력하세요.");
int num;
while (true) {
scanf_s("%d", &num);
if (num >0 && num % 2 == 1) {//짝수일때
break;
}
else {
printf("홀수를 입력하세요.\n");
}
}
printf("입력한 별의 개수는 %d입니다.\n",num);
//3
reverseStar(num);
printf("\n");
//4
butterfly(num);
}
|
cs |
728x90
반응형
'C > 기말고사 대비(2022 1학기)' 카테고리의 다른 글
[C언어 시험대비] srand (0) | 2022.06.12 |
---|---|
[C언어 시험대비] 2015년 기출 (0) | 2022.06.12 |
[C언어 시험대비] 2016년 기말고사 기출(3) (0) | 2022.06.11 |
[C언어 시험대비] 배열포인터 (0) | 2022.06.11 |
[C언어 시험대비] 16년 기출(2) (0) | 2022.06.11 |
댓글