这道题可以用头插法创建列表,然后正常输出:

#include<stdio.h>
#include<stdlib.h>
#define MAX 100 typedef struct Book{
double no;
char name[MAX];
double price;
struct Book * next;
}Book,*BList;
//头插法创建链表
void CreatList(BList &B)
{
B = (BList)malloc(sizeof(Book));
B->next = NULL;
BList rear = B;
int n;
scanf("%d",&n); for(int i=;i<=;i++)
{
BList p = (BList)malloc(sizeof(Book));
scanf("%lf",&p->no);
scanf("%s",p->name);
scanf("%lf",&p->price);
if(p->no==&&p->name[]==''&&p->price==) break;
p->next = rear->next;
rear->next = p;
}
}
void traverse(BList B)
{
BList p = B->next;
while(p)
{
printf("%.0f ",p->no);
printf("%s ",p->name);
printf("%.2f",p->price);
printf("\n");
p = p->next;
}
} int main()
{
BList B;
CreatList(B);
traverse(B);
return ;
}

BJFU-217-基于链式存储结构的图书信息表的逆序存储的更多相关文章

  1. BJFU-207-基于顺序存储结构的图书信息表的逆序存储

    #include<stdio.h> #include<stdlib.h> #define MAX 1000 typedef struct{ double no; char na ...

  2. BJFU—214基于链式存储结构的图书信息表的创建和输出

    #include<stdio.h>#include<stdlib.h>#define MAX 100 typedef struct bNode{ double no; char ...

  3. BJFU-215-基于链式存储结构的图书信息表的排序

    这里用的是冒泡排序 #include<stdio.h> #include<stdlib.h> #define MAX 100 typedef struct Book{ doub ...

  4. BJFU-216-基于链式存储结构的图书信息表的修改

    #include<stdio.h> #include<stdlib.h> #define MAX 100 typedef struct Book{ double no; cha ...

  5. BJFU-218-基于链式存储结构的图书信息表的最贵图书的查找

    如果编译不通过,可以将C该为C++ #include<stdio.h> #include<stdlib.h> #define MAX 100 //创建节点 typedef st ...

  6. BJFU——205基于顺序存储结构的图书信息表的排序

    #include<stdio.h> #include<stdlib.h> #define MAX 1000 typedef struct{ double no; char na ...

  7. BJFU-206-基于顺序存储结构的图书信息表的修改

    #include<stdio.h> #include<stdlib.h> #define MAX 1000 typedef struct{ double no; char na ...

  8. BJFU-208-基于顺序存储结构的图书信息表的最贵图书的查找

    #include<stdio.h> #include<stdlib.h> #define MAX 1000 typedef struct{ double no; char na ...

  9. js中变量的作用域、变量提升、链式作用域结构

    一:作用域 在ES6之前,javascript没有块级作用域(一对{}即为一个块级作用域),只有全局作用域和函数作用域(局部),因此,对应的有全局变量和局部变量.在函数内部可以访问到全局变量,但在函数 ...

随机推荐

  1. Reactive Extensions (Rx) 入门(2) —— 安装 Reactive Extensions

    译文:https://blog.csdn.net/fangxing80/article/details/7581937 原文:http://www.atmarkit.co.jp/fdotnet/int ...

  2. Mongoose 索引

    Mongoose 索引介绍 索引是对数据库表中一列或多列的值进行排序的一种结构,可以让我们查询数据库变得更 快(如果有些字段是用不着的就不要设置索引).MongoDB 的索引几乎与传统的关系型数据库一 ...

  3. 分析WordPress数据表之文章表(功能篇)

    数据表分析 wp_posts(文章表) 表字段如下:ID(文章ID)post_author(文章作者名,我想可以是为用户名,也可以是用户ID)post_date(文章发布日期)post_date_gm ...

  4. thrift 是rpc协议

    PC(Remote Procedure Call,远程过程调用)是建立在Socket之上的,出于一种类比的愿望,在一台机器上运行的主程序,可以调用另一台机器上准备好的子程序,就像LPC(本地过程调用) ...

  5. C#实现图像拖拽以及锚点缩放功能

    本文主要实现C#窗体图像拖拽以及锚点缩放功能 1.新建Windows窗体应用项目,添加一个panel控件,在panel控件上添加picturebox控件 代码如下: using System; usi ...

  6. windows如何删除服务

    有时候软件被安装成了服务,但是卸载后如何删除无效的服务,这时候就不是普通用户就能删除了,这属于操作系统管理级别了,需要使用管理命令了. 管理员权限打开cmd,执行如下: C:\Windows\syst ...

  7. IIS连接数、并发连接数、最大并发工作线程数、应用程序池的队列长度、应用程序池的最大工作进程数详解

    IIS:连接数.并发连接数.最大并发工作线程数.应用程序池的队列长度.应用程序池的最大工作进程数详解 iis性能指标的各种概念:连接数.并发连接数.最大并发工作线程数.应用程序池的队列长度.应用程序池 ...

  8. WebGL学习笔记(十四):一些零碎的记录

    HUD和Billboard 这两个名词都指向同一种东西,即始终面向摄像机的面片,该技术在游戏中大量使用,比如UI的绘制.模型头顶的名称和血条等等都需要使用到. 交换缓冲区 在PC上使用的OpenGL开 ...

  9. /bin/sh^M:解释器错误:没有那个文件或目录

    在win下编辑的时候,换行结尾是\n\r , 而在linux下 是\n,所以才会有 多出来的\rsed -i 's/\r$//' configure 删除configure脚本中的\r

  10. 僵尸进程bug排除方法

    多进程处理存在的问题 直接return 200 子进程 signal.signal(signal.SIGCHLD, signal.SIG_IGN) #不管子进程,不然R的多进程切图会产生僵尸进程