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을 출력하도록 하였다.

+ Recent posts