#include<stdio.h>
#include<stdlib.h>
#define N sizeof(link)
typedef struct lin
{
struct lin *next;
int num;
char name[];
char sex;
int age;
}link;
void print(link *head)
{
link *p;
p=head;
printf("打印数据如下:\n");
while(p)
{
printf("%d\t%s\t%c\t%d\n",p->num,p->name,p->sex,p->age);
p=p->next;
}
}
int n;
link *creat(void)
{
link *head,*p,*s;
p=s=(link *)malloc(N);
printf("请输入输数据:\n");
scanf("%d %s %c %d",&p->num,p->name,&p->sex,&p->age);
head=p;
n=;
while(p->num!=)
{
n++;
if(n!=)s->next=p;
s=p;
p=(link*)malloc(N);
printf("请输入数据1:\n");
scanf("%d %s %c %d",&p->num,p->name,&p->sex,&p->age);
}
s->next=NULL;
return(head);
}
link *del(link *head,int a)
{
link *p,*p1,*s;
for(p=p1=head;p;)
{
if(p->age==a)
if(p==head)
{
s=p;
head=p=p->next;
free(s);
}
else
{
p1->next=p->next;
s=p;
p=p->next;
free(s); }
else
{
p1=p;
p=p->next;
}
}
return(head);
}
int main()
{
link *head,*p;
int a;
head=creat();
printf("打印处理前的数据:\n");
print(head);
printf("请输入年龄:\n");
scanf("%d",&a);
p=del(head,a);
printf("打印处理后的数据: \n");
print(p);
return ;
}

测试结果:

请输入输数据:
Li F
请输入数据1:
Wang M
请输入数据1:
Sun F
请输入数据1:
CH M
请输入数据1:
QIn F
请输入数据1:
Kun F
请输入数据1:
Jun M
请输入数据1:
Xun F
请输入数据1:
Liu M
请输入数据1: 打印处理前的数据:
打印数据如下:
Li F
Wang M
Sun F
CH M
QIn F
Kun F
Jun M
Xun F
Liu M
请输入年龄: 打印处理后的数据:
打印数据如下:
Wang M
Sun F
QIn F
Kun F
Xun F
Press any key to continue

谭浩强第四版第九章课后习题12>>>建立一个链表,每个节点包括:学号、姓名、性别、年龄。输入一个年龄,若链表 中的结点所包含的年龄等于此年龄,则删除此结点。的更多相关文章

  1. 谭浩强C语言第四版第九章课后习题7--9题(建立,输出,删除,插入链表处理)

    #include<stdio.h> #include<stdlib.h> #define N sizeof(link) typedef struct stu { struct ...

  2. c++面向对象程序设计 课后题 答案 谭浩强 第四章

    c++面向对象程序设计课后题答案 谭浩强 第四章 1: #include <iostream> using namespace std; class Complex {public: Co ...

  3. java编程思想第四版第九章总结

    1. 策略设计模式 参考这篇文章:http://blog.csdn.net/chenjie19891104/article/details/6396458 讲的很清楚,策略设计模式.并且举了一个例子, ...

  4. java编程思想第四版第九章习题

    第三题 package net.mindview.interfaces; abstract class Base{ public Base(){ print(); } abstract void pr ...

  5. 挂羊头卖狗肉蓄意欺骗读者——谭浩强《C程序设计(第四版)》中所谓的“按照C99”(二)

    挂羊头卖狗肉蓄意欺骗读者——谭浩强<C程序设计(第四版)>中所谓的“按照C99”(二) 在<谭C>p4:“本书的叙述以C99标准为依据”,下面从C89到C99的主要变化方面来看 ...

  6. C程序设计(谭浩强)第五版课后题答案 第一章

    大家好,这篇文章分享了C程序设计(谭浩强)第五版课后题答案,所有程序已经测试能够正常运行,如果小伙伴发现有错误的的地方,欢迎留言告诉我,我会及时改正!感谢大家的观看!!! 1.什么是程序?什么是程序设 ...

  7. c++面向对象程序设计 谭浩强 第一章答案

    c++面向对象程序设计 谭浩强 答案 第一章 目录: c++面向对象程序设计 谭浩强 答案 第一章 c++面向对象程序设计 谭浩强 答案 第二章 c++面向对象程序设计 谭浩强 答案 第三章 c++面 ...

  8. c++面向对象程序设计 谭浩强 第三章答案

    2: #include <iostream> using namespace std; class Date {public: Date(int,int,int); Date(int,in ...

  9. c++面向对象程序设计 谭浩强 第二章答案

    类体内定义成员函数 #include <iostream> using namespace std; class Time { public: void set_time(); void ...

随机推荐

  1. 一个C#面试问题,要求是将字符串中重复字符从第二个开始都去掉,空格除外。然后显示的时候,从后往前显示。

    因为C#的code,感觉实现这个还是比较容易,只是SB.所以,在面试时候,以为不会这么容易,所以,我先试着用了Dictionary去实现,发现有困难.然后改回来用StringBuilder实现,这个因 ...

  2. Vue项目中引入ElementUI

    前提:创建好的vue项目. 1.安装ElementUI 转到项目根目录,输入命令:#cnpm install element-ui --save-dev 2.在 main.js 引入并注册 impor ...

  3. #学习笔记#e2e学习使用(二)

    前言: <#学习笔记#e2e学习使用(一)>主要记录了Vue项目的创建到e2e环境的搭建,以及期间遇到的各种问题和解决方法.本文建立在基础测试环境搭建完毕能正确运行的情况下,编写测试代码, ...

  4. 使用sqlloader向oracle导入文本数据

    文本文件如下,注意文件名必须有后缀,文本行首也需要|分隔符:[oracle@ycr test]$ more person.txt|aaa|123|m|aaa|123|m|aaa|123|m|aaa|1 ...

  5. mysql使用mysqld_multi工具启动多实例

    先给出实验环境/etc/my.cnf文件内容修改内容为:添加了[mysqld_multi]标签和多出来两个数据库的标签[mysqld3307]和[mysqld3308]配置完成后启动方法,举一例:my ...

  6. MSMQ学习笔记一——概述

    一.MSMQ是什么 Message Queuing(MSMQ) 是微软开发的消息中间件,可应用于程序内部或程序之间的异步通信.主要的机制是:消息的发送者把自己想要发送的信息放入一个容器中(我们称之为M ...

  7. May 11th 2017 Week 19th Thursday

    If you fell down yesterday, stand up today. 昨天跌倒了,今天仍然要站起来. From Herbert George Wells. If you fell d ...

  8. sql 两表查询后 更新某表中部分字段

    这是上一个sql更新某表字段的一个延伸,在更新表数据时,实际上会有多表数据查询场景,查询后,只需要更新某一个表中的数据,以下提供两个方法, 第一种使用update 两表查询 update api_ma ...

  9. echart 折线图、柱状图、饼图、环形图颜色修改

    之前在做报表的时候用过echart 用完也就完了,而这次在用的时候已经忘了,所以这里简单记录一下,好记性不如烂笔头!!! 1.折线图修改颜色: xAxis: { type: 'category', b ...

  10. 【BZOJ1171】大sz的游戏(线段树+单调队列)

    点此看题面 大致题意: 有\(n\)个点,两点间最大通讯距离为\(L\).已知除\(1\)号点外第\(i\)个点能够发出和接收的信号区间\([l_i,r_i]\)以及到\(1\)号点的距离\(dis_ ...