c - 在c中将文件输入读入结构数组的简单方法?
问题描述
我正在学习 C,我很难理解如何将数据传递到结构数组并打印它。这是我到目前为止所拥有的:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct info
{
int num1;
char *name;
int num2;
int num3;
int num4;
} info;
info *create_array(int num_group)
{
info *data = calloc(num_group, sizeof(info));
return data;
}
int main(void)
{
FILE *ifp;
info *data;
int num_group;
int i;
ifp = fopen("input.txt", "r");
fscanf(ifp, "%d", &num_group);
printf("%d", num_group);
data = create_array(num_group);
for (i = 0; i < num_group; i++)
{
fscanf(ifp, "%d %s %d %d %d", &data->num1, &data->name, &data->num2, &data->num3, &data->num4);
}
for (i = 0; i < num_group; i++)
{
printf("%d %s %d %d %d", data->num1, data->name, data->num2, data->num3, data->num4);
}
}
示例输入:我希望它打印完全相同。第一个数字决定了我有多少组
4
4 string1 2 3 4
3 string2 5 8 9
1 string3 6 8 5
65 string4 65 87 55
奖励:如果你能指导我如何使用第一列从最低到最高排序,那就太棒了。
解决方案
推荐阅读
- multithreading - 共享 Pixel Buffer 对象并同步两个 OpenGL 上下文
- servlets - 如何在 Grails 中将真实路径作为字符串获取
- java - Spring Boot 应用程序在 Heroku 代码 = H10 上崩溃
- amazon-web-services - Aws Always Free 是否每个账户或每个电子邮件地址/实际 AWS 账户都有限制?
- javascript - 如何在自定义属性中发送 pdf url 并在联系表 7 中成功提交后下载?
- node.js - 如何让后端知道用户发送的访问令牌是有效的
- java - 我相信由于范围,这不是我想要的方式。有没有办法让这个工作?
- mysql - 我在 Laravel 中使用 eloquent 找到什么相关模型?
- aws-lambda - API Gateway 的 Lambda 集成能否返回自定义对象?
- zsh - 更改 ZSH 命令提示符