c语言

c语言怎么输入一个集合

小亿
88
2024-10-11 16:53:16
栏目: 编程语言

在C语言中,没有直接支持集合(set)的数据结构。但是,你可以使用数组、链表或其他数据结构来模拟集合的行为。

以下是一个使用数组模拟集合的简单示例:

#include <stdio.h>
#include <stdbool.h>

#define MAX_SIZE 100

int main() {
    int set[MAX_SIZE];  // 定义一个大小为100的数组来存储集合元素
    int size = 0;  // 用于记录集合的大小

    // 输入集合元素
    printf("请输入集合的元素(输入-1结束):\n");
    while (1) {
        int element;
        scanf("%d", &element);
        if (element == -1) {
            break;
        }
        // 检查元素是否已经存在于集合中
        bool is_exists = false;
        for (int i = 0; i < size; i++) {
            if (set[i] == element) {
                is_exists = true;
                break;
            }
        }
        if (!is_exists) {
            set[size++] = element;  // 如果元素不存在于集合中,则添加到集合中
        } else {
            printf("元素 %d 已经存在于集合中。\n", element);
        }
    }

    // 输出集合元素
    printf("集合的元素为:\n");
    for (int i = 0; i < size; i++) {
        printf("%d ", set[i]);
    }
    printf("\n");

    return 0;
}

这个示例程序会提示用户输入集合的元素,直到用户输入-1为止。程序会检查每个输入的元素是否已经存在于集合中,如果不存在,则将其添加到集合中。最后,程序会输出集合的所有元素。

请注意,这个示例程序使用固定大小的数组来存储集合元素,因此需要预先定义数组的大小。如果你需要处理更大或更小的集合,你可以考虑使用动态内存分配来调整数组的大小。此外,这个示例程序仅支持整数类型的元素,如果你需要处理其他类型的元素,你需要相应地修改代码。

0
看了该问题的人还看了