10주차 실습 문제(1)

스크린샷 2024-11-27 오후 8.41.39.png

#include <stdio.h>

#define stuSZ 5
#define probNUM 10

int main()
{
	char answer[probNUM];
	int score[stuSZ];
	
	//정답 입력
    printf("정답을 입력하세요: ");
    scanf("%s", answer);
    
    printf("정답: %s\\n", answer);

    //각 학생별 답안
	char student[stuSZ][probNUM]={ 
        {'a','b','c','d','b','c','a','b','c'},
			{'a','a','a','a','a','b','c','d','a'},
			{'a','a','c','a','a','c','c','d','c'},
			{'d','c','a','a','a','b','c','d','a'},
			{'a','b','d','d','a','b','c','d','a'} };

    for(int i=0; i<stuSZ; i++){
        for(int j=0; j<probNUM; j++){
            if(answer[j] == student[i][j]){
                score[i] += 10;
            }
    }   } 
	
    for(int i=0; i<stuSZ; i++){
        printf("%d번 점수: %d\\n",i+1,score[i]);
    }
	return 0;
}

10주차 실습 문제(2)

스크린샷 2024-11-27 오후 8.45.15.png

#include <stdio.h>

#define STUDENT 4
#define SUBJECT 5

int main()
{
	char numbers[STUDENT][20] = {"1번","2번","3번","4번"};
	int score[STUDENT][SUBJECT+2]={ {78, 90,34, 46,80}, {98, 74,84, 76,72}, {76, 48,34, 72,89}, {61, 91,67, 88,83} };

	int i, j, sum=0;

	//총점과 평균 계산하여 배열에 입력
	for(i = 0; i < STUDENT; i++) {
        sum = 0; // 매 학생마다 sum 초기화
        for(j = 0; j < SUBJECT; j++) {
            sum += score[i][j]; // 과목 점수 합산
        }
        score[i][SUBJECT] = sum; // 총점 저장
        score[i][SUBJECT + 1] = sum / SUBJECT; // 평균 저장
    }

	// 번호, 과목별 점수, 총점, 평균 출력 (수정하지 마세요!)
	for(i=0;i<STUDENT;i++)
	{
		printf("%s:  ", numbers[i]);
		for(j=0;j<SUBJECT+2;j++)
		{
			printf("%d  ", score[i][j]);
		}
		printf("\\n");
	}

	return 0;
}

10주차 실습 문제(3)

스크린샷 2024-11-27 오후 8.49.52.png

스크린샷 2024-11-27 오후 8.50.10.png

#include <stdio.h>

int main()
{
	int mat1[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12};
	int mat2[4][2];
	int matrix[3][2]={0};
	int i, j, k;

	// mat2에 원소값 입력
    printf("mat2에 원소값을 입력하세요: ");
	for (i=0; i<4; i++){
		for (j=0; j<2; j++){
			scanf("%d",&mat2[i][j]);
		}
	}	
    

	// 행렬 곱 계산
    for (i = 0; i < 3; i++) {
        for (j = 0; j < 2; j++) {
            for (k = 0; k < 4; k++) {
                matrix[i][j] += mat1[i][k] * mat2[k][j];
            }
        }
    }
    

	// 출력 (수정하지 마세요!)
	printf("3x4 mat1 행렬 \\n");
	for(i=0;i<3;i++) 
	{
		for(j=0;j<4;j++)
		{
			printf("%3d  ", mat1[i][j]);
		}
		printf("\\n");
	}

	printf("\\n4x2 mat2 행렬 \\n");
	for(i=0;i<4;i++) 
	{
		for(j=0;j<2;j++)
		{
			printf("%3d  ", mat2[i][j]);
		}
		printf("\\n");
	}

	printf("\\nmat1 과 mat2의 곱 \\n");
	for(i=0;i<3;i++) 
	{
		for(j=0;j<2;j++)
		{
			printf("%3d  ", matrix[i][j]);
		}
		printf("\\n");
	}

	return 0;
}

스크린샷 2024-11-27 오후 9.13.00.png