当前位置:首页 > 行业动态 > 正文

c语言怎么使用数据集

在C语言中使用数据集,通常需要以下步骤:

1、数据结构定义

2、数据读取

3、数据处理

4、数据输出

假设我们有一个CSV格式的数据集,内容如下:

Name,Age,Gender
Alice,20,Female
Bob,25,Male
Cathy,30,Female

我们可以使用以下C语言代码来处理这个数据集:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 定义数据结构
typedef struct {
    char name[20];
    int age;
    char gender[10];
} Person;
// 读取CSV文件
Person *read_csv(const char *filename, int *count) {
    FILE *file = fopen(filename, "r");
    if (!file) {
        printf("Error: Unable to open file %s
", filename);
        exit(1);
    }
    fgets(buffer, sizeof(buffer), file); // 跳过表头
    *count = 0;
    Person *people = malloc(sizeof(Person));
    while (fgets(buffer, sizeof(buffer), file)) {
        sscanf(buffer, "%[^,],%d,%[^
]", people[*count].name, &people[*count].age, people[*count].gender);
        (*count)++;
        people = realloc(people, (*count) * sizeof(Person));
    }
    fclose(file);
    return people;
}
// 打印数据
void print_data(Person *people, int count) {
    for (int i = 0; i < count; i++) {
        printf("Name: %s, Age: %d, Gender: %s
", people[i].name, people[i].age, people[i].gender);
    }
}
int main() {
    const char *filename = "data.csv";
    int count;
    Person *people = read_csv(filename, &count);
    print_data(people, count);
    free(people);
    return 0;
}

这段代码首先定义了一个结构体Person来存储每个人的信息,然后通过read_csv函数读取CSV文件并将数据存储在Person数组中。print_data函数将读取到的数据打印出来。

0