01.
더보기
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void)
{
int i = 0, arr[5] = { 0 };
printf("%d 개의 정수 입력 >> ", (sizeof(arr) / sizeof(arr[0]))-1);
while (i < 4) {
scanf("%d", &arr[i]);
arr[4] += arr[i];
i++;
}
for (int i = 0; i < 5; i++) {
printf("%d ", arr[i]);
}
puts("");
return 0;
}
02.
더보기
#include <stdio.h>
int main(void)
{
double degree[] = { -5.34,3.67,19.76,28.76,35.63 };
int size = sizeof(degree) / sizeof(degree[0]);
for (int i = 0; i < size; i++)
printf("%.2lf ", degree[i]);
puts("");
return 0;
}
03.
더보기
#include <stdio.h>
int main(void)
{
int data[] = { 3,21,35,57,24,82,8 };
int size = sizeof(data) / sizeof(data[0]);
for (int i = 0; i < size; i++) {
data[i] += 10;
printf("%d ", data[i]);
}
puts("");
return 0;
}
04.
더보기
#include <stdio.h>
int main(void) {
int a[] = { 32,56,7,8,24 };
int b[] = { 3,21,35,57,24,82,8 };
int a_size = sizeof(a) / sizeof(a[0]);
int b_size = sizeof(b) / sizeof(b[0]);
int c[sizeof(a) / sizeof(a[0]) + sizeof(b) / sizeof(b[0])];
printf("두 배열을 연결한 배열의 원소 값을 출력\n");
for (int i = 0; i < a_size + b_size; i++) {
if (i < a_size) c[i] = a[i];
else c[i] = b[i - a_size];
printf("%d ", c[i]);
}
puts("");
return 0;
}
05.
더보기
#include <stdio.h>
int main(void)
{
int a[] = { 4,7,9,3,6 };
int b[] = { 10,20,30,40,50,60 };
for (int i = 0; i < (sizeof(a) / sizeof(a[0])); i++)
b[i] = a[i];
printf("b[] = ");
for (int i = 0; i < (sizeof(b) / sizeof(b[0])); i++)
printf("%d ", b[i]);
puts("");
return 0;
}
06.
더보기
#include <stdio.h>
int main(void)
{
double arr[] = { 98.56,78.62,78.69,89.32,95.29 }, sum = 0;
int size = sizeof(arr) / sizeof(arr[0]);
for (int i = 0; i < size; i++) {
printf("%.2lf ", arr[i]);
sum += arr[i];
}
printf("\n배열의 합은 %.3lf이며 평균은 %.3lf입니다.\n", sum, sum / size);
return 0;
}
07.
더보기
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void)
{
int i = 0, arr[10] = { 0 }, index, max_index = 0;
printf("0에서 9까지의 정수를 입력하시오.\n");
while (i < 20) {
scanf("%d", &index);
if (index < 0 || index>9) {
printf("잘못된 수 입력\n");
return 0;
}
arr[index]++;
i++;
}
for (int i = 1; i < (sizeof(arr) / sizeof(arr[0])); i++) {
if (arr[max_index] < arr[1]) {
max_index = i;
}
}
printf("\n0 ~ 9 중 가장 많이 나온 수는 %d이고, %d번 나왔습니다.\n", max_index, arr[max_index]);
return 0;
}
08.
더보기
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void)
{
int year, month;
int monthEnd[] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
printf("년과 월을 다음과 같이 입력하면 그 달의 말일을 알려드립니다.\n2024 2 : 입력 >> ");
scanf("%d %d", &year, &month);
if (year < 0 || month < 1 || month > 12) {
printf("잘못된 입력입니다.\n");
return 0;
}
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {
monthEnd[1] = 29;
}
printf("%d년 %d월의 말일은 %d일입니다.\n", year, month, monthEnd[month - 1]);
return 0;
}
09.
더보기
#include <stdio.h>
int main(void)
{
double arr[10] = { 0 };
for (int i = 0; i < (sizeof(arr) / sizeof(arr[0])); i++) {
arr[i] = 1 / ((i + 2.0) * (i + 3.0));
printf("data[%d] = %.3lf\n", i, arr[i]);
}
return 0;
}
10.
더보기
#include <stdio.h>
int main(void) {
int score[][4] = {
{ 97, 90, 88, 95 },
{ 76, 89, 75, 83 },
{ 60, 70, 88, 82 },
{ 75, 73, 72, 78 } };
int sum_score = 0;
printf("%9s%8s%6s%6s%6s\n", "이름", "중간", "중간", "기말", "기말");
printf("==================================================\n");
for (int i = 0; i < sizeof(score) / sizeof(score[0]); i++) {
switch (i) {
case 0: printf("%10s", "이현수"); break;
case 1: printf("%10s", "김기수"); break;
case 2: printf("%10s", "김범용"); break;
case 3: printf("%10s", "장기태"); break;
case 4: printf("%10s", "이명수"); break;
}
for (int j = 0, sum = 0; j < sizeof(score[0]) / sizeof(score[0][0]); j++) {
sum += score[i][j];
sum_score = sum;
printf("%6d", score[i][j]);
}
printf("%6d %8.2lf\n", sum_score, sum_score / 4.0);
}
return 0;
}
11.
더보기
#include <stdio.h>
int main(void)
{
int arr[][4] = {
{ 78, 48, 78, 98 },
{ 99, 92, 83, 29 },
{ 29, 64, 83, 89 },
{ 34, 78, 92, 56} };
int row_size = sizeof(arr) / sizeof(arr[0]);
int col_size = sizeof(arr[0]) / sizeof(arr[0][0]);
int colsum[sizeof(arr[0])/sizeof(arr[0][0])] = { 0 };
int rowsum, total;
rowsum = total = 0;
printf("다음표의 세로와 가로합, 그리고 모든합을 구합니다.\n\n");
printf("--------------------------------\n");
for (int i = 0; i < row_size; i++) {
for (int j = 0; j < col_size; j++)
printf("| %3d ", arr[i][j]);
printf("|\n");
}
printf("--------------------------------\n\n");
printf("위 표의 세로와 가로합, 그리고 모든합을\n각각 행과 열의 마지막에 구합니다.\n\n");
printf("--------------------------------\n");
for (int i = 0; i < row_size; i++) {
for (int j = 0, sum = 0; j < col_size; j++){
printf("| %3d ", arr[i][j]);
sum += arr[i][j];
rowsum = sum;
colsum[j] += arr[i][j];
}
total += rowsum;
printf("| %3d |\n", rowsum);
}
for (int j = 0; j < col_size; j++) {
printf("| %3d ", colsum[j]);
}
printf("|%4d |\n", total);
return 0;
}
12.
더보기
#include <stdio.h>
#define ROWSIZE 4
#define COLSIZE 3
int main(void)
{
int matrix[][ROWSIZE][COLSIZE] =
{
{ { 46, 79, 78 },
{ 35, 57, 28 },
{ 43, 68, 76 },
{ 56, 78, 98 } },
{ { 78, 35, 99 },
{ 85, 82, 34 },
{ 58, 59, 29 },
{ 34, 59, 35 } }
};
printf("\n위의 두 행렬 합의 결과값입니다.\n");
printf("----------------\n");
for (int i = 0; i < ROWSIZE; i++) {
for (int j = 0; j < COLSIZE; j++) {
printf("|%4d", matrix[0][i][j]+matrix[1][i][j]);
}
printf("|\n");
}
printf("----------------\n");
printf("\n위의 두 행렬 차의 결과값입니다.\n");
printf("----------------\n");
for (int i = 0; i < ROWSIZE; i++) {
for (int j = 0; j < COLSIZE; j++) {
printf("|%4d", matrix[0][i][j] - matrix[1][i][j]);
}
printf("|\n");
}
printf("----------------\n");
return 0;
}