链表(c语言实现)--------------小练习
#include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX_SIZE 100 #define MIN_SIZE 32 struct role { int number; char name[MAX_SIZE]; char sex[MIN_SIZE]; int age; struct role *next; }; struct role *creat() { struct role *p = NULL; struct role *head = NULL; struct role *tail = NULL; p = (struct role *)malloc(sizeof(struct role)); printf(" 请输入编号,按0即退出\n"); printf("编号->"); scanf("%d", &(p->number)); ) return head; ) { printf("姓名->"); scanf("%s", p->name); printf("性别->"); scanf("%s", p->sex); printf("年龄->"); scanf("%d", &(p->age)); if (head == NULL) { head = p; tail = p; } else { tail->next = p; tail = p; } p = (struct role *)malloc(sizeof(struct role)); printf("请输入编号,按0即退出\n"); printf("编号->"); scanf("%d", &(p->number)); } tail->next = NULL; free(p); return head; } void display(struct role *head) { struct role *p = head; printf("编号 姓名 性别 年龄\n"); while (p != NULL) { printf("%-16d%-16s%-16s%-16d\n", p->number, p->name, p->sex, p->age); p = p->next; } } int main(void) { struct role *head = creat(); display(head); ; }
需要改进的还很多.
这仅仅是练习~~~~
数据结构,我来了.加油!!!
小小的修改下...(其实就是free几下...咳咳..新人,,见笑了...)
#include <stdio.h> #include <stdlib.h> #define MAX_SIZE 50 #define MIN_SIZE 32 struct role { int number; char name[MAX_SIZE]; char sex[MIN_SIZE]; char address[MAX_SIZE]; int age; struct role *next; }; struct role *creat() { struct role *head = NULL; struct role *p = NULL; struct role *tail = NULL; p = (struct role *)malloc(sizeof(struct role)); printf("请输入编号,按0退出\n"); printf("编号->"); scanf("%d", &(p->number)); == p->number) { free(p); ; } != p->number) { printf("姓名->"); scanf("%s", p->name); printf("性别->"); scanf("%s", p->sex); printf("地址->"); scanf("%s", p->address); printf("年龄->"); scanf("%d", &(p->age)); if (NULL == head) { head = p; tail = p; } else { tail->next = p; tail = p; } p = (struct role *)malloc(sizeof(struct role)); printf("请输入编号,按0退出\n"); printf("编号->"); scanf("%d", &(p->number)); } tail->next = NULL; free(p); return head; } void display(struct role *head) { struct role *p = NULL; p = head; printf("编号 姓名 性别 住址 年龄\n"); while (NULL != p) { printf("%-16d%-16s%-16s%-16s%-16d", p->number, p->name, p->sex, p->address, p->age); p = p->next; } } int main(void) { struct role *head = NULL; head = creat(); display(head); ; }
最后.因为是练习,所以也没想用多文件...呼..不过这样看起来确实很乱...O.O
链表(c语言实现)--------------小练习的更多相关文章
- 链表c语言实现
链表(c语言实现)--------------小练习 #include <stdio.h> #include <stdlib.h> #include <string. ...
- Swift语言 1小时速学教程
本文由 张渊杰 (网名寂静)编写 Swift语言 1小时速学教程 写在前面的话 有些人可能想, 呵呵, 1小时学一门语言, 你不是搞笑吧, 我想说, 是的, 完全可以, 就要看你怎么学了 要想在1小时 ...
- 嵌入式C语言优化小技巧
嵌入式C语言优化小技巧 1 概述 嵌入式系统是指完成一种或几种特定功能的计算机系统,具有自动化程度高,响应速度快等优点,目前已广泛应用于消费电子,工业控制等领域.嵌入式系统受其使用的硬件以及运行环境的 ...
- 数据结构之链表C语言实现以及使用场景分析
牢骚:本篇博客两个星期前已经存为草稿,鉴于发生一些糟糕的事情,今天才基本完成.本人6月份应届毕业生一枚,毕业后当天来到帝都,之后也非常顺利,面试了俩家公司都成功了.一家做C++方面电商ERP,一家做w ...
- 链表(C++语言实现)
我使用的是严蔚敏的数据结构C语言版,很反感里面的全是伪代码,平常也没怎么敲代码,链表和顺序表是数据结构的第一个实验课程,顺序表还好,但是链表就有点困难了,因为里面涉及指针的运用.我对于指针并不是很精通 ...
- c语言的小问题
在c语言编程中要注意一个小问题,如果你编写scanf("%d",&n);printf("%d",n)这个你输入几就输出几,毫无疑问.但是现在问题来了?如 ...
- 单链表 C语言 学习记录
概念 链接方式存储 链接方式存储的线性表简称为链表(Linked List). 链表的具体存储表示为: 用一组任意的存储单元来存放线性表的结点(这组存储单元既可以是连续的,也可以是不连续的). 链表中 ...
- 企业链表C语言实现
/* * LinkList.h * * Created on: 2019年7月20日 * Author: Administrator */ #ifndef SRC_LINKLIST_H_ #defin ...
- C语言—期末小黄衫获奖感言
小黄衫获奖感言 一,感谢环节 非常感谢邹欣,周筠老师给提供的小黄衫,我非常荣幸的能够获得这个奖项,我感到无比自豪.感谢两位老师对教学事业的大力支持,对我们学生的亲切关怀.同时感谢我的C语言老师彭琛(琛 ...
随机推荐
- 包装类(Wrapper Class)
1)包装类.针对于原生数据类型的包装.所有的包装类(8个)对位于java.lang包下.java中的8个包装类分别是:Byte,Short,Integer,Long,Float.Double,Char ...
- 【转】C#中Invoke的用法
在多线程编程中,我们经常要在工作线程中去更新界面显示,而在多线程中直接调用界面控件的方法是错误的做法,Invoke 和 BeginInvoke 就是为了解决这个问题而出现的,使你在多线程中安全的更新界 ...
- Oracle 11g Windows 迁移至 Linux
OS: windows server 2008 R2 enterprise DB: 11.2.0.1.0 数据库配置: ORACLE_BASE=D:\app\Administrator ORACLE_ ...
- python小算法(一)
1.长度为m的字符串a,长度为n的字符串b,(m>n) 判断b中的字母是否全在a中? O(n)最小. class Num(object): def getNum(self, m): numLis ...
- python 实现求和、计数、最大最小值、平均值、中位数、标准偏差、百分比。
import sys class Stats: def __init__(self, sequence): # sequence of numbers we will process # conver ...
- 通过WebBrowser取得AJAX后的网页
通常情况下通过WebBrowser的文档加载完成事件DocumentCompleted中进行判断 if (_WebBrowder.ReadyState == WebBrowserReadyState. ...
- Entity Framework 学习第一天
文章是作为初学者记录之用,没有学习过的同学可以借鉴一下,至于用过和高手嘛,就算了吧.仅是入门.废话不多说了,马上新建个项目,添加Entity Framework,这个词以下将用EF代替. 本文使用的I ...
- JS如何获取多个相同class标签并分别再输出各自的文本
function getClass(boo) { var span = $("span.w");//获取所有的span标签 <span class="w" ...
- disable_irq()与disable_irq_nosync()区别
disable_irq关闭中断并等待中断处理完后返回, 而disable_irq_nosync立即返回.
- UISlider swift
// // ViewController.swift // UILabelTest // // Created by mac on 15/6/23. // Copyright (c) 2015年 fa ...