C언어 - 쉽게 풀어쓴 C언어 express 10장 배열 실습문제(짝수번)

2022. 7. 13. 19:51·C프로그래밍/개인 공부

2번

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
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
 
int main(void)
{
    srand((unsigned)time(NULL));
    int i[10] = {0};
    int j;
    int k;
    int t;
    int temp;
    int least;
 
    for(j = 0; j < 10; j++){
        i[j] = rand();
    }
 
    for(j = 0; j < 10; j++){
        printf("%d\n", i[j]);
    }
 
    printf("정렬 후\n");
 
    for(k = 0; k < 9; k++){
        least = k;
 
        for(t = k + 1; t < 10; t++){
            if(i[t] < i[least]){
                least = t;
            }
        }
 
        temp = i[k];
        i[k] = i[least];
        i[least] = temp;
    }
 
    for(j = 0; j < 10; j++){
        printf("%d\n", i[j]);
    }
 
    printf("최대값 : %d\n최솟값 : %d\n", i[0], i[9]);
 
    return 0;
}
Colored by Color Scripter
cs

4번

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
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
 
#define SIZE 10
 
void array_copy(int a[], int b[], int size);
 
int  main(void)
{
    int a[SIZE] = {0};
    int b[SIZE] = {0};
    int i;
 
    srand((unsigned)time(NULL));
 
    for(i = 0; i < SIZE; i++){
        a[i] = 1 + rand() % 10;
    }
 
    array_copy(a, b, SIZE);
 
    for(i = 0; i < SIZE; i++){
        printf("a[%d] = %d\nb[%d] = %d\n", i, a[i], i, b[i]);
    }
    return 0;
}
 
void array_copy(int a[], int b[], int size)
{
    int n;
 
    for(n = 0; n < size; n++){
        b[n] = a[n];
    }
}
Colored by Color Scripter
cs

6번

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
#include<stdio.h>
 
int main(void)
{
    int a[3][5] = { //열의 개수는 반드시 지정
        {12, 56, 32, 16, 98},
        {99, 56, 34, 41, 3},
        {65, 3, 87, 78, 21},
    };
    int i;
    int j;
    int rows_sum;
    int cols_sum;
    
    for(i = 0; i < 3; i++){
        rows_sum = 0;
 
        for(j = 0; j < 5; j++){
            rows_sum = rows_sum + a[i][j];
        }
 
        printf("%d 행의 총 합 : %d\n", i + 1, rows_sum);
    }
 
    printf("---------------------------------\n");
 
    for(i = 0; i < 5; i++){
        cols_sum = 0;
 
        for(j = 0; j < 3; j++){
            cols_sum = cols_sum + a[j][i];
        }
 
        printf("%d 열의 총 합 : %d\n", i + 1, cols_sum);
    }
 
    return 0;
}
Colored by Color Scripter
cs

10-1번

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
#include<stdio.h>
#define SIZE 3
 
void vector_add(double x[], double y[], double z[]);
 
int main(void)
{
    double x[SIZE] = {1, 2, 3};
    double y[SIZE] = {4, 5, 6};
    double z[SIZE] = {0};
 
    int i;
 
    vector_add(x, y, z);
 
    for(i = 0; i < SIZE; i++){
        printf("%f ", z[i]);
    }
 
    printf("\n");
    
    return 0;
}
 
void vector_add(double x[], double y[], double z[])
{
    int i;
 
    for(i = 0; i < SIZE; i++){
        z[i] = x[i] + y[i];
    }
}
Colored by Color Scripter
cs

10-2번

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
#include<stdio.h>
#define SIZE 3
 
double vector_dot_prod(double x[], double y[]);
 
int main(void)
{
    double x[SIZE] = {1, 2, 3};
    double y[SIZE] = {4, 5, 6};
 
    printf("%f", vector_dot_prod(x, y));
    printf("\n");
 
    return 0;
}
 
double vector_dot_prod(double x[], double y[])
{
    int i;
    double z[SIZE];
    double sum;
 
    for(i = 0; i < SIZE; i++){
        z[i] = x[i] * y[i];
    }
 
    for(i = 0; i < SIZE; i++){
        sum = sum + z[i];
    }
 
    return sum;
}
Colored by Color Scripter
cs

12번

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
#include<stdio.h>
#define SIZE 3
void scalar_mult(int a[][3], int scalar);
void transpose(int a[][3], int b[][3]);
 
int main(void)
{
    int a[][3] = {
        {1, 2, 3},
        {4, 5, 6},
        {7, 8, 9}
    };
    int b[3][3] = {0}; //행을 지정해줘야됨 이건
    int i;
    int j;
 
    //scalar_mult(a, 2); //이 함수 사용하려면 주석제거하고 실행하면됨
 
    for(i = 0; i < SIZE; i++){
        for(j = 0; j < SIZE; j++){
            printf("%d ", a[i][j]);
        }
        printf("\n");
    }
    printf("------------------------\n");
 
    transpose(a, b);
 
    for(i = 0; i < SIZE; i++){
        for(j = 0; j < SIZE; j++){
            printf("%d ", b[i][j]);
        }
        printf("\n");
    }
 
    return 0;
}
 
void scalar_mult(int a[][3], int scalar)
{
    int i;
    int j;
 
    for(i = 0; i < SIZE; i++){
        for(j = 0; j < SIZE; j++){
            a[i][j] = 2 * a[i][j];
        }
    }
}
 
void transpose(int a[][3], int b[][3])
{
    int i;
    int j;
 
    for(i = 0; i < SIZE; i++){
        for(j = 0; j < SIZE; j++){
            b[i][j] = a[j][i];
        }
    }
}
Colored by Color Scripter
cs

'C프로그래밍 > 개인 공부' 카테고리의 다른 글

C언어 - 문자열 변경, 문자열 상수와 포인터  (0) 2022.08.09
C언어 - 간접 참조 연산자 *  (0) 2022.07.14
C언어 - 정렬  (0) 2022.07.06
C언어 - 배열과 함수  (0) 2022.07.06
C언어 - 배열의 복사, 비교  (0) 2022.07.04
'C프로그래밍/개인 공부' 카테고리의 다른 글
  • C언어 - 문자열 변경, 문자열 상수와 포인터
  • C언어 - 간접 참조 연산자 *
  • C언어 - 정렬
  • C언어 - 배열과 함수
Jminu
Jminu
  • Jminu
    뇌 구조가 바이너리
    Jminu
  • 전체
    오늘
    어제
    • 분류 전체보기
      • C프로그래밍
        • 오류해결
        • 개인 공부
        • Programming Lab(학교수업)
        • MemoryTracker
      • C++
        • 개인 공부
      • 자료구조(Data Structure)
      • ARM arch
        • Cortex-M
        • FreeRTOS
      • 컴퓨터 공학(Computer Science)
        • OS
        • 컴퓨터 구조
      • Qualcomm 기업과제
      • Linux
        • start_contribute()
        • start_analyse()
      • Web
      • 똥글
      • 백준
      • Git 학습
        • 오류해결
        • 학습중
      • Python
        • 오류해결
        • 개인 공부
  • 블로그 메뉴

    • 태그
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    자료구조
    포인터
    rubik pi
    arm
    파일 입출력
    INIT
    드라이버 분석
    백준
    C++
    커널 기여
    순환
    c언어
    Git
    Branch
    yolo
    스택
    리눅스
    소수
    피보나치
    동적메모리
    rubikpi3
    버퍼
    시스템콜
    파이썬
    이진 트리
    앤드류모튼
    토발즈
    Qualcomm
    커널
    commit
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Jminu
C언어 - 쉽게 풀어쓴 C언어 express 10장 배열 실습문제(짝수번)
상단으로

티스토리툴바