建立一个链表,每个结点包括:学号、姓名、性别、年龄。输入一个年龄,如果链表中的结点所包含的年龄等于此年龄,则将此结点删去。(自己编程)
建立一个链表,每个结点包括:学号、姓名、性别、年龄。输入一个年龄,如果链表中的结点所包含的年龄等于此年龄,则将此结点删去。最近接触到了链表的编程学习,遇到这样的比较基础的编程,程序表现大致分为几个步骤:
1、建立一个链表,编写一个建立链表的函数,并输入学号、姓名、性别、年龄,这些信息,
2、编写一个删除输入要求年龄的函数。
3、编写一个链表输出函数。
#include <stdio.h>
#include <stdlib.h>
typedef struct stu{int num;char name[10];char sex;int age;struct stu *next;
}STU,*STUP; //声明一个结构体,里面包含学号、姓名、性别、年龄,还该结构体指针。
#define LEN sizeof(STU)
int main()
{STUP head;STUP creat(void); //建立链表函数。STUP delet(STUP head,int age_temp);//删除要求年龄函数。void print(STUP head);//输出链表函数
int age_temp;printf("请输入学号、姓名、性别、年龄:\n");head=creat();print(head);
printf("请输入要删除的年龄:\n");
scanf("%d",&age_temp);
head=delet(head,age_temp);
printf("输出删除后的信息:\n");
print(head);
}
STUP creat(void) //建立链表函数
{STUP p1,p2,head;int n=0;p1=p2=(STUP)malloc(LEN);head=NULL;scanf("%d %s %c %d",&p1->num,p1->name,&p1->sex,&p1->age);while(p1->num!=0){n=n+1;if(n==1)head=p1;else p2->next=p1;p2=p1;p1=(STUP)malloc(LEN);scanf("%d %s %c %d",&p1->num,p1->name,&p1->sex,&p1->age);}p2->next=NULL;return head;}
void print(STUP head) //输出链表函数
{STUP p;p=head;if(head!=NULL)do{printf("%5d%7s%4c%5d\n",p->num,p->name,p->sex,p->age);p=p->next;}while(p!=NULL);}
STUP delet(STUP head,int age_temp) //删除要求年龄函数
{STUP h,p;h=(STUP)malloc(LEN); //创建一个空结点h->next=head;head=h;for(p=head;p->next!=NULL;p=p->next)if(p->next->age==age_temp)p->next=p->next->next;head=head->next;return head;
}
建立一个链表,每个结点包括:学号、姓名、性别、年龄。输入一个年龄,如果链表中的结点所包含的年龄等于此年龄,则将此结点删去。(自己编程)相关推荐
- 已有a,b两个链表,每个链表中的结点包括学号、成绩。要求把两个链表合并,按学号 升序排序
/*已有a,b两个链表,每个链表中的结点包括学号.成绩.要求把两个链表合并,按学号 升序排序*/#include <stdio.h> #include <stdlib.h> t ...
- 习题 9.10 已有a,b两个链表,每个链表中的结点包括学号、成绩。要求把两个链表合并,按学号升序排列。
C程序设计(第四版) 谭浩强 习题9.10 个人设计 习题 9.10 已有a,b两个链表,每个链表中的结点包括学号.成绩.要求把两个链表合并,按学号升序排列. 代码块: #include <st ...
- 已有a,b两个链表,每个链表中的结点包括学号,成绩。要求把两个链表合并,按学号升序排列。
#include <stdio.h> #include <stdlib.h> #define LEN sizeof(struct student) #define NULL 0 ...
- 建立一个按年龄排序的有序链表,每个结点包括学号、姓名、性别、年龄。建立一个新的结点,通过年龄将此结点插入到链表中去,使之仍然有序
<程序设计基础实训指导教程-c语言> ISBN 978-7-03-032846-5 p143 7.1.2 上级实训内容 [实训内容12]建立一个按年龄排序的有序链表,每个结点包括学号.姓名 ...
- 建立计算机科学系的学生视图,、为计算机专业的学生创建一个视图,要求包括学号、姓名、专业、课程名称、成绩等列,设置W...
.为计算机专业的学生创建一个视图,要求包括学号.姓名.专业.课程名称.成绩等列,设置W0 Traignina2013.03.22浏览2146次分享举报 .为计算机专业的学生创建一个视图,要求包括学号. ...
- 提升: 建立一个如下的学生情况表,要求先依次输入学生数据元素,然后依次显示当前表中的学生数据元素。 学号 姓名 性别 年龄 2000001 张三 男 20 2000002
提升: 建立一个如下的学生情况表,要求先依次输入学生数据元素,然后依次显示当前表中的学生数据元素. 学号 姓名 性别 年龄 2000001 张三 男 20 2000002 李四 男 21 200000 ...
- 设一个学生的信息包括学号、姓名、出生日期和性别等。把n个学生的信息放入一个集合中,可以根据学号对学生信息进行检索,并且可以根据出生日期对学生进行排序输出。
设一个学生的信息包括学号.姓名.出生日期和性别等.把n个学生的信息放入一个集合中,可以根据学号对学生信息进行检索,并且可以根据出生日期对学生进行排序输出. 要求 对于每个学生的个人信息,可以定义一个类 ...
- 把一个学生的信息(包括学号、姓名、性别、住址)放在一个结构体变量中,然后输出这个学生的信息
把一个学生的信息(包括学号.姓名.性别.住址)放在一个结构体变量中,然后输出这个学生的信息. #include<stdio.h> int main() {struct Student{lo ...
- 求两门成绩平均c语言,数据结构课的作业 要求用链表实现学生的学号 姓名 两门课的成绩 同时求出课程的平均成绩...
数据结构课的作业 要求用链表实现学生的学号 姓名 两门课的成绩 同时求出课程的平均成绩 关注:69 答案:2 mip版 解决时间 2021-02-04 09:43 提问者孤城古巷 2021-02- ...
- c语言输出编号姓名成绩,c语言 学生信息包括,学号,姓名,五门功课的成绩.输入输出。总分排序...
c语言 学生信息包括,学号,姓名,五门功课的成绩.输入输出.总分排序 來源:互聯網 2010-06-16 18:12:05 評論 分類: 電腦/網絡 >> 程序設計 >> ...
最新文章
- Anaconda | CentOS7 -解决 Python2和Python3共存
- N-GRAM模型的概率公式
- commonJS — 全局操作(for Window)
- Java程序员的自我修养?
- html页面锁屏,JavaScript网页锁屏效果源码实例
- ASP.net在线购物商城系统完全解析
- 实战CSS:静态百度首页实现
- 物联网全栈教程-从云端到设备(四)
- 2018农行--软开
- oracle dbms_utility,dbms_utility的两个有用方法
- leetcode13——罗马数字转整数(简单,0)
- log4j 使用记录
- 【Java小项目】打飞机
- opencv 图像金字塔及图像重建、融合
- 怎样linux下修复u盘,怎样Linux下修复U盘驱动器
- 几句话说清楚AMD® Ryzen CPU里的PBO
- 滴水逆向 C语言基础学习
- terminate called after throwing an instance of ‘std::runtime_error‘ what(): locale::facet::_S_cre
- 浅析深究什么是SOA
- 系统性能监控-Windows自带性能监控器
热门文章
- 《最高人民法院 最高人民检察院 公安部关于办理电信网络诈骗等刑事案件适用法律若干问题的意见(二)》
- 解决ORA-00904: invalid identifier标识符无效
- 我的2020秋招总结,京东+字节跳动+拼多多,本人已成功入职并夕夕!
- 用Java编写简单的扑克牌游戏
- python爬取股票平均成本怎么算_Python-多个股票的投资组合分析,对,进行
- oracle查询最近十天日期,ORACLE中距离某日期最近的记录的查询
- EXCEL 同一标签内容求和
- 前端 js实现模糊搜索
- 美食小吃加盟网站源码 餐饮奶茶招商加盟类网站pbootcms模板 带安装视频教程【已测试】
- [luogu1341] 无序字母对