C言語でのデータ操作とアルゴリズム:read()、display()、bubbleSort()、binarySearch()の実装方法


  1. read()関数の実装:

    #include <stdio.h>
    void read(int array[], int size) {
    printf("データを入力してください:\n");
    for (int i = 0; i < size; i++) {
        scanf("%d", &array[i]);
    }
    }

    この関数では、ユーザーからデータを入力し、配列に格納します。

  2. display()関数の実装:

    #include <stdio.h>
    void display(int array[], int size) {
    printf("データを表示します:\n");
    for (int i = 0; i < size; i++) {
        printf("%d ", array[i]);
    }
    printf("\n");
    }

    この関数では、配列の要素を表示します。

  3. bubbleSort()関数の実装:

    #include <stdio.h>
    void bubbleSort(int array[], int size) {
    for (int i = 0; i < size - 1; i++) {
        for (int j = 0; j < size - i - 1; j++) {
            if (array[j] > array[j + 1]) {
                // 要素の交換
                int temp = array[j];
                array[j] = array[j + 1];
                array[j + 1] = temp;
            }
        }
    }
    }

    この関数では、バブルソートアルゴリズムを使用して配列を昇順にソートします。

  4. binarySearch()関数の実装:

    #include <stdio.h>
    int binarySearch(int array[], int size, int target) {
    int low = 0;
    int high = size - 1;
    while (low <= high) {
        int mid = (low + high) / 2;
        if (array[mid] == target) {
            return mid;
        } else if (array[mid] < target) {
            low = mid + 1;
        } else {
            high = mid - 1;
        }
    }
    return -1; // 要素が見つからない場合は-1を返す
    }

    この関数では、バイナリサーチアルゴリズムを使用してソートされた配列から要素を検索します。要素が見つかればそのインデックスを返し、見つからない場合は-1を返します。

以上がread()、display()、bubbleSort()、binarySearch()関数の基本的な実装例です。これらの関数を使って、データの入力、表示、ソート、検索を行うことができます。この記事は、C言語の初学者やデータ操作とアルゴリズムに興味のある人に役立つでしょう。