No. 1546
#include<stdio.h>
int main()
{
int tc, i;
double arr[1001], max = 0, avg = 0;
scanf("%d", &tc);
for (i = 0; i < tc; i++) {
scanf("%lf", &arr[i]);
if (max < arr[i]) max = arr[i];
}
for (i = 0; i < tc; i++) {
avg += arr[i] / max * 100;
}
printf("%lf", avg / tc);
return 0;
}
코드 설명 : 먼저 과목 개수인 tc를 입력받고 그만큼의 과목 점수를 for문으로 입력받는다. 이 때 과목 점수는 arr라는 배열에 저장해주었다. 최댓값을 찾아야하기 때문에 if문으로 max가 arr[i]보다 작으면 계속해서 max값을 업데이트 시켜주도록 하였다. for문으로 avg변수에 이 문제의 계산식을 이용하여 계산된 값을 계속하여 더해주었다. 그리고 이 값을 과목의 개수인 tc만큼 나누어 출력하도록 하였다.
No. 2438
#include<stdio.h>
int main()
{
int n, i, j;
scanf("%d", &n);
for (i = 1; i <= n; i++) {
for (j = 1; j <= i; j++) {
printf("*");
}
printf("\n");
}
}
코드 설명 : n을 입력값으로 받아주고 그 값이 행의 값이 되기 때문에 for문으로 1에서 n만큼 반복시켜주었다. 그 안에 for문을 추가하여 열의 개수를 행과 동일한 값으로 주기 위해 i만큼 출력하도록 하였다. 그리고 행이 바뀔때마다 엔터를 쳐줘야하기 때문에 바깥 for문에 \n을 출력하도록 하였다.
No. 2439
#include<stdio.h>
int main()
{
int n, i, j;
scanf("%d", &n);
for (i = 1; i <= n; i++) {
for (j = n - 1; j >= i; j--) {
printf(" ");
}
for (j = 1; j <= i; j++) {
printf("*");
}
printf("\n");
}
}
코드 설명 : n을 입력값으로 받아주고 그 값이 행의 값이 되기 때문에 for문으로 1에서 n만큼 반복시켜주었다. 그 안에 for문을 추가하여 행이 내려갈수록 앞에 존재하는 빈칸 수가 적어지기 때문에 n-1부터 i까지 감소하도록 해주었다. 별의 개수는 행과 동일하기 때문에 1부터 i까지 *을 출력하도록 하였다. 그리고 행이 바뀔때마다 엔터를 쳐줘야하기 때문에 바깥 for문에 \n을 출력하도록 하였다.
'Algorithm > BOJ' 카테고리의 다른 글
[SISS] C 백준 6주차 (2908, 2920, 3052) (0) | 2022.02.01 |
---|---|
[SISS] C 백준 5주차 (2742, 2753, 2884) (0) | 2022.01.30 |
[SISS] C 백준 4주차 (2675, 2739, 2741) (0) | 2022.01.22 |
[SISS] C 백준 3주차 (2475, 2562, 2577) (0) | 2022.01.10 |
[SISS] C 백준 1주차 (1152, 1330, 1157) (0) | 2022.01.01 |