有一些,经典的对文件的操作。

fin = fopen ( argv[1], "rt" );//获取文件的指针

if ( fin == NULL )//判断是否为空

{

fprintf ( stderr, "Cannot open/find %s\n", argv[2] );

exit ( EXIT_FAILURE );

}

/* Create and initialize the linked list to empty */

CreateList();

/*--- main loop ---*/

while ( ! feof ( fin ))//判读文件是否读完

{

/* read a record consisting of a line of text */

if ( fgets ( buffer, 127, fin ) == NULL )

break;

char *p;

char *name;

char* a;

p = strtok(buffer, " ,");//截取字符串,成一段一段的

strcpy(n->StuId, p);//将一个字符串指针的内容存储到一个字符数组中

name = strtok(NULL, " ,");

strcpy(n->Name, name);

a = strtok(NULL, " ,");

n->age = atoi(a);//转换字符型为×××

n->Next = NULL;///你个×××,你不看看到底实际空间是谁的。!!!!!这个一定要设置,否则判断最后是否为空没法判断!!!

printf("===============================\n");

printf("%20s,%10s,%d\n",n->StuId, n->Name, n->age);

printf("===============================\n");

/* add the node to the list */

if ( AddNodeAscend ( n ) == 0 ) //如果没加上这个节点。

{

fprintf ( stderr, "Error adding node. Aborting\n" );

exit ( EXIT_FAILURE );

}

}

while (scanf("%s", cmd) != EOF){

if (cmd[0] == 'H' || cmd[0] == 'h')

{

printf("例如:\n  查找第一个结点:P0\n  删除第一个节点:D0\n  在位置一处插入节点:I1 SA17225130 马云 34 退出程序:q|Q\n\n");

}

else if (cmd[0] == 'P'){

int n = atoi(strdup(cmd + 1));//将cmd[1]以及后面所有字符串提取出来转成×××

ShowOneNode(n++);//展示需要的那个结点

}

转载于:https://blog.51cto.com/ji123/1975538

用c语言对文件读取,并使用链表,和顺序表进行存储,操作相关推荐

  1. C语言的文件读取与写入操作

    学了一年的C语言了,现在回过头来做一下总结.并且博客开了挺长一段时间却没有谢什么实际的东西.现在做下总结,对之后的学习帮助应该挺大的.与大家共勉! 现在,我先来介绍一下C语言的文件读取与写入的原理和具 ...

  2. C语言顺序表:1、顺序表的存储、2、顺序表的实现.

    [1]顺序表的存储:一对一的关系,如下图所示:找到张三就可以顺序查找找到李四 [2]顺序表的实现: 首先我们来创建两个.c文件和一个.h文件,比如:seqlist.c .main.c.seqlist. ...

  3. 西北乱跑娃 --- 易语言大文件读取

    为了读取大文件翻遍了很多网站,都说要使用打开文件属性,让人难以抓住问题解决的核心,值得吐槽的就是易语言收费的特质,去哪里下载以及解决问题都是跌跌斑斑.确实很让人费神,现在把大文件读取写到这里. 一.定 ...

  4. linux flash文件读取,一种基于Linux的flash文件系统存储策略

    摘要:随着嵌入式系统的广泛应用,嵌入式系统中的数据存储和数据管理显得日益重要.本文主要介绍flash存储器的存储特点,Linux文件系统的两类存储策略:块式存储和线性存储,并在此基础上提出了一种改进的 ...

  5. C语言实现文件读取矩阵乘法

    用C语言计算矩阵乘积 一.设计需求: 用命令行参数的形式编写C语言程序 从A.txt和B.txt中读取连个矩阵 需要判断两个矩阵能否相乘 把计算后的结果写入到C.txt中 二.实现思路 1.用命令行参 ...

  6. c语言awx文件读取,气象卫星分发产品及其格式规范AWX2.1(数据格式C语言).doc

    气象卫星分发产品AWX及其格式规范,通过本文方法可以读取该格式文件内容. 3.3第一级文件头记录格式 表1.4 一级文件头记录结构 序号字节序号字节数类型描述字备注11-1212Char×12Sat ...

  7. 链表线性表及其操作c语言代码大全,用链表实现线性表的各种操作(C语言)

    #include # include # include //定义节点结构体 typedef struct Node { int data;//数据域 struct Node * pNext;//指针 ...

  8. c语言链表实现数组逆置,数组与链表等顺序表逆置

    一)数组的逆置 (1)算法 #indclude #define N  8 main() { int array[N] = {100,90,80,70,60,50,50,40}; int i,j,t; ...

  9. C语言-数据结构-可变长顺序表的删除操作

    [问题描述] 实现可变长顺序表的删除算法.任务要求:通过顺序表的初始化.插入算法,创建顺序表.根据删除需求,删除指定的顺序表元素. [输入形式] 第一行输入整数N(1<=N<=100),M ...

最新文章

  1. linux批量管理矿机,华硕最新的挖矿主机板可以一次控制 20 个 GPU
  2. POJ 1321 棋盘问题【DFS】
  3. Win10 安装程序错误2502/2503 拒绝访问 解决
  4. python3小游戏源代码_如何用python3代码玩小游戏?
  5. github不用输入用户密码即可登录
  6. JQuery 总结(5) 总结各种小应用
  7. Python爬取mn52网站美女图片以及图片防盗链的解决方法
  8. 配置基于python的VIM环境
  9. 理解ConstraintLayout 对性能的好处
  10. html5页面主题,HTML5页面开发笔记
  11. File类的mkdir()与mkdirs()方法的区别
  12. 日常踩坑:pip安装包速度过慢,更换国内镜像源(亲测有效)
  13. ECMAScript 学习笔记03
  14. centos内存压力测试软件,教你在CentOS下的CPU、内存、IO、网络的压力测试工具与方法...
  15. Datax-HdfsWriter如何实现支持decimal类型数据写入
  16. 如何在Windows上启用JavaScript
  17. 设为首页 加入收藏 html,js设为首页和加入收藏代码(兼容所有浏览器)
  18. ipad端网页屏幕变小了
  19. Sieve of Eratosthenes(埃拉托色尼筛选法)——C++实现
  20. 深入理解生成对抗网络(GAN 基本原理,训练崩溃,训练技巧,DCGAN,CGAN,pix2pix,CycleGAN)

热门文章

  1. 用编程语言和计算机沟通
  2. 《Groovy语言规范》-语法(一)
  3. 21、OSPF配置实验之特殊区域totally stub
  4. 阿里巴巴MySQL DBA面试题答案(欢迎进来讨论)
  5. 记录几个Maven库地址
  6. Selenium2.0 获取隐藏元素的内容
  7. 简单工厂模式(静态工厂模式)
  8. [文章摘录] Strategies for Early-Stage Collaborative Design (IEEE Software, 2012)
  9. Visual C# 2005——超好用的DropDown与DropDownClosed事件
  10. c#中类的简单使用学习