HQYJ 2024-2-29 作业

作业: 编写链表,链表里面随便搞点数据 使用 fprintf 将链表中所有的数据,保存到文件中 使用 fscanf 读取文件中的数据,写入链表中

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
//链表结构体定义
typedef struct link_list
{
	union
	{
		int data;
		int len;
	};
	struct link_list *next;

}link_list,*link_p;

//创建头结点
link_p creat_head()
{
	link_p H = (link_p)malloc(sizeof(link_list));
	if(H==NULL){
		printf("申请空间失败\n");
		return NULL;
	}
	H->len = 0;
	H->next = NULL;
	return H;
}

//创建新结点
link_p new_nod(int data)
{
	link_p new = (link_p)malloc(sizeof(link_list));
	if(new==NULL){
		printf("申请空间失败\n");
		return NULL;
	}
	new->data = data;
	return new;
}

//尾插
void insert_tail(link_p L,int data)
{
	if(L==NULL){
		printf("入参失败\n");
		return;
	}
	link_p p = L;
	link_p new = new_nod(data);
	while(p->next!=NULL){
		p = p->next;
	}
	new->next = p->next;
	p->next = new;
}

//遍历
void out_put(link_p L)
{
	link_p p = L->next;
	while(p!=NULL){
		printf("%d->",p->data);
		p=p->next;
	}
	printf("NULL");
	putchar(10);
}


int main(int argc, const char *argv[])
{
	link_p L = creat_head();
	insert_tail(L,10);
	insert_tail(L,20);
	insert_tail(L,30);
	insert_tail(L,40);
	//out_put(L);
	link_p p = L->next;
	FILE *wfp = fopen("link.txt","w");
	if(wfp==NULL){
		return 1;
	}
	while(p!=NULL){
		int ret = fprintf(wfp,"%d\n",p->data);
		p=p->next;
	}
	fclose(wfp);
	
	FILE *rfp = fopen("link.txt","r");
	link_p L2 = creat_head();	
	int data=0;
	while(1){
		int ret = fscanf(rfp,"%d",&data);
		printf("%d\n",data);
		if(ret!=1){break;}
		insert_tail(L2,data);
			}
		
	out_put(L2);
	fclose(rfp);
	return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/417247.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Java程序设计】【C00323】基于Springboot的高校科研信息管理系统(有论文)

基于Springboot的高校科研信息管理系统&#xff08;有论文&#xff09; 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的高校科研信息管理系统&#xff0c;本系统有管理员、学校管理员、科研人员三种角色&#xff1b; 管理员&#xff1a;首页、个…

【Unity实战】UGUI和Z轴排序那点事儿

如果读者是从Unity 4.x时代过来的&#xff0c;可能都用过NGUI这个插件&#xff08;后来也是土匪成了正规军&#xff09;&#xff0c;NGUI一大特点是可以靠transform位移的Z值进行遮挡排序&#xff0c;然而这个事情在UGUI成了难题&#xff08;Sorting Layer、Inspector顺序等因素…

黑马c++ STL部分 笔记(3) deque容器

双端数组&#xff0c;可以对头端进行插入删除操作 deque与vector区别&#xff1a; vector对于头部的插入删除效率低&#xff0c;数据量越大&#xff0c;效率越低&#xff08;每次头插&#xff0c;后面的元素就往后移&#xff09; deque相对而言&#xff0c;对头部的插入删除速…

代码随想录训练营第31天 | 理论基础、LeetCode 455.分发饼干、

目录 理论基础 视频讲解&#xff1a;手把手带你学会操作链表 | 贪心算法理论基础&#xff01;_哔哩哔哩_bilibili LeetCode 455.分发饼干 文章讲解&#xff1a;代码随想录(programmercarl.com) 视频讲解&#xff1a;贪心算法&#xff0c;你想先喂哪个小孩&#xff1f;| Le…

Linux Shell脚本练习(一)

一、 Linux下执行Shell脚本的方式&#xff1a; 1、用shell程序执行脚本&#xff1a; a、根据你的shell脚本的类型&#xff0c;选择shell程序&#xff0c;常用的有sh&#xff0c;bash&#xff0c;tcsh等 b、程序的第一行#!/bin/bash里面指明了shell类型的&#xff0c;比如#!/…

Docker部署ROS程序

【先上干货】 1、docker安装 curl -fsSL https://test.docker.com -o test-docker.shsudo sh test-docker.sh# ubuntu系统可以直接通过apt安装 sudo apt-get install -y docker.io 2、给docker一个root权限 sudo usermod -aG docker $USER3、启动docker服务 # service 命令…

Windows文件管理器居然提示要登录,还要开通会员才能使用?

前几天有个朋友找到小白&#xff0c;说他装了个假的Windows系统。 啥&#xff1f;Windows还有假的吗&#xff1f;那这个高仿的水准可就高了。 她说她电脑里的文件管理器突然提示她要登录&#xff0c;还要开通会员才能使用全部功能。 这可把她急坏了&#xff0c;问我说要不要支…

JMETER与它的组件们

os进程取样器 这个取样器可以让jmeter直接调用python写的测试数据 这样就可以调用python写的测试数据给到jmeter进行调用 注意&#xff1a;1建议python返回转json格式dumps一下&#xff1b;2py文件中需要把结果打印出来&#xff0c;可以不用函数直接编写 传到jmeter之后可以用…

智慧应急:构建全方位、立体化的安全保障网络

一、引言 在信息化、智能化快速发展的今天&#xff0c;传统的应急管理模式已难以满足现代社会对安全保障的需求。智慧应急作为一种全新的安全管理模式&#xff0c;旨在通过集成物联网、大数据、云计算、人工智能等先进技术&#xff0c;实现对应急事件的快速响应、精准决策和高…

复盘丁磊造车危机:超10亿美金融资搁浅,高合等待救援

作者 |祥威 编辑 |德新 2024年春节过后&#xff0c;新造车公司华人运通宣布停工停产&#xff0c;等待最后救援。 华人运通由丁磊创办于2017年&#xff0c;2019年发布高合HiPhi &#xff0c;定位「豪华智能纯电品牌」&#xff0c;至今推出的量产车型有高合HiPhi X、Z、Y。 丁…

MATLAB环境下使用相关图可视化相关矩阵

为了处理各行各业中出现的高维数据&#xff0c;迫切需要寻找适用的统计学方法。大维随机矩阵理论是处理高维数据的理论工具之一&#xff0c;在高维统计分析中&#xff0c;表现出良好的性能并有着广泛的应用。 二十世纪四十年代和五十年代初期&#xff0c;大维随机矩阵理论起源…

377组合总和 Ⅳ

题目 给你一个由 不同 整数组成的数组 nums &#xff0c;和一个目标整数 target 。请你从 nums 中找出并返回总和为 target 的元素组合的个数。题目数据保证答案符合 32 位整数范围。示例 1&#xff1a;输入&#xff1a;nums [1,2,3], target 4 输出&#xff1a;7 解释&…

模型选择与评估

&#x1f6a9; 机器学习的一般流程包括&#xff1a;数据集的准备与预处理、搭建模型、模型训练、模型评估与应用。 在现实任务中&#xff0c;我们往往有多种学习算法可供选择&#xff0c;甚至对同一个学习算法&#xff0c;当使用不同的参数配置时&#xff0c;也会产生不同的模型…

@Slf4j 变量log找不到符号,可能是 Gradle 配置文件写得有问题

Slf4j 变量log找不到符号 鄙人在学习 Java 的 spring boot 项目时, 常常因为 maven 配置文件使用 xml 格式过于复杂, 所以更倾向于使用 gradle 作为构建工具. 然而, 在使用 gradle 作为构建工具时, 又需要引用 Lombok 依赖. 有时忘记在初始化项目时添加上 Lombok 依赖, 所以经…

源码安装nginx保姆级教程

一.目录存放 1./usr/lib/syste,md/system/:每个服务最主要的启动脚本设定 2. /run/systemd/system/&#xff1a;系统执行过程中所产生的服务脚本&#xff0c;这些脚本的优先序要比 /usr/lib/systemd/system/ 高&#xff01; 3./etc/systemd/system/&#xff1a;管…

力扣:9. 回文数

力扣&#xff1a;9. 回文数 给你一个整数 x &#xff0c;如果 x 是一个回文整数&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 回文数是指正序&#xff08;从左向右&#xff09;和倒序&#xff08;从右向左&#xff09;读都是一样的整数。 例如&#xf…

【Redis | 第一篇】快速了解Redis

文章目录 1.快速了解Redis1.1简介1.2与其他key-value存储的不同处1.3Redis安装——Windows环境1.3.1下载redis1.3.2启动redis1.3.3进入redis客户端1.3.4修改配置 1.4Redis安装——Linux环境1.4.1安装命令1.4.2启动redis1.4.3进入redis客户端 1.5配置修改1.6小结 1.快速了解Redi…

开源项目:图像分类技术在医疗影像分析中的应用与实践

一、引言 在当今快速发展的医疗行业中&#xff0c;数字医疗正逐渐成为提升医疗服务质量和效率的关键力量。本项目旨在通过整合医药电商、远程问诊、慢病管理等多维度服务&#xff0c;为消费者和企业提供全面的医疗解决方案。项目的核心在于运用先进的图像分类技术&#xff0c;以…

开工大吉,接单助你!

新年的气息逐渐散去&#xff0c;打工人重返岗位&#xff0c;开启新一年的搬砖&#xff01; 虽说&#xff0c;个个都叫嚷着“这个班是非上不可不可嘛&#xff1f;&#xff01;”但不少人新年的第一条朋友圈却是“开工大吉”。好吧&#xff0c; 在生活和金钱的威逼利诱下&#…

OSCP靶场--Shenzi

OSCP靶场–Shenzi 考点(1.目录扫描&#xff1a;可以尝试使用多个工具(扫描不出来任何东西&#xff0c;可以结合机器名拼接url 2.WP 目标插入webshell getshell 3.windows环境AlwaysInstallElevated提权) 1.nmap扫描 ┌──(root㉿kali)-[~/Desktop] └─# nmap -sV -sC -p- …