结构体与链表

 1 #include<stdio.h>
 2 #include<string.h>
 3 #include<stdlib.h>
 4 #include<malloc.h>
 5 #define N 3
 6 #define LEN sizeof(struct grade)
 7 struct grade
 8 {
 9     char no[7];
10     int score;
11     struct grade *next;
12 };
13 struct grade *create(void)
14 {
15
16     struct grade  *head=NULL,*new,*tail;
17     int i ;
18     for( i=1;i<=N;i++)
19     {
20
21         new=(struct grade*)malloc(LEN);
22         printf("please int no\n");
23         scanf("%s",new->no);
24         if(strcmp(new->no,"000000")==0)
25         {
26             free(new);
27             break;
28         }
29         printf("please int score\n");
30         scanf("%d",&new->score);
31         new->next=NULL;
32         if(i==1)  head=new;
33         else    tail->next=new;
34         tail=new;
35     }
36     return head;
37
38 }
39 main()
40 {
41
42     struct grade *p;
43     int i;
44     p=create();
45     if(p!=NULL)
46
47
48        for(i=1;i<=N;i++)
49     {
50         printf("%s:%d\n",p->no,p->score);
51         p=p->next;
52     }
53   free(p);
54 }
时间: 2024-11-05 06:10:18

结构体与链表的相关文章

C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com

原文:C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 本文由 arthinking 发表于315 天前 ⁄ itzhai.com原创文章 ⁄ C语言 ⁄ 评论数 3 ⁄ 被围观 1,775 views+ 指针数组: 在一个数组中,如果它的元素全部都是指针类

学习C/C++语言:结构体,动态链表

//*************************************************************** //结构体:简单的静态链表 #include<stdio.h> #include<string.h> #define NULL 0 #define SIZE 10 struct student { char num[SIZE]; float score; struct student *next; }; void main() { struct stu

关于结构体和链表结构

程序如下 #include <stdio.h>typedef struct list{ int data; struct list *next;} LIST;int fun(LIST *h){ LIST *p; int t = 0;//初始值不给的话会出现很离奇的错误! p=h; while( p )//*p为结构体,不能转换为bool(布尔)型,只能用p或者*p!=NULL { t=t+p->data;//p为指针,需要用->,不能用 .  p=(*p).next; } retu

解决一个题目。关于结构体与链表的操作

有初学者给我发了一个题目,求助我解决. 题目如下: 其实哥也不会C,但就是有一颗热心肠.于是果断研究起. 最后解决如下: 先上效果图 附上代码 : // LinkListDemo.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <STDLIB.H> # define LEN sizeof(struct examinee) //结构体长度 //

3.结构体与链表

转载请标明出处:http://blog.csdn.net/u012637501 一.结构体 struct Student *p:p是一个struct Student *类型的指针变量, 用于存放struct Student类型变量的地址 1.结构体:把一些基本类型数据组合在一起形参的一个新的复合数据类型,用来表示一些复杂的事物,即称为结构体. 2.定义结构体方法 (1)第一种方法:指定结构体名,不定义结构体变量 struct Student { int age; float score; cha

结构体和链表

PTA 实验作业 7-1查找书籍 1.本题 pta 提交列表 2.设计思路 本题要求我们给定n本书的名称和定价并编写程序,查找并输出其中定价最高和最低的书的名称和定价. 尤其注意到的是要保证输出的为保留两位小数 这种题目我们要使用结构体,首先先定义好书名和价格为结构体,再定义 max 和 min并初始化为0用来标记最小价格和最高价格的书 再输入书本的个数n 之后,要判断循环变量 i 是否小于 n,不是的话直接输出答案 是的话再输入书本信息,并比较 s[i] 和 max 或 min 的大小,如果大

C语言结构体

一.结构体的定义 1.定义形式 struct 结构名 {成员列表:};       //定义为语句,分号不能丢 2.结构类型变量的声明 (1)声明形式1 struct student { int number; char name[10]; float score; }; struct student st1,st2,st3; (2)声明形式2 struct student { int number; char name[10]; float score; }st1,st2,st3; (3)结构

Python中对复杂数据结构排序(类似C中结构体数据结构)

Python中排序主要有两个函数:sorted和列表成员函数sort,两者除了调用方式有些区别外,最显著的区别是sorted会新建一个排序好的列表并返回,而sort是修改原列表并排好序.sorted的原型是: sorted(iterable, cmp=None, key=None, reverse=False) sort的原型是: list.sort(cmp=None, key=None, reverse=False) 其中cmp和key都是函数引用,即可以传入函数名.这两个函数都是对list里

linux块设备驱动---相关结构体(转)

上回最后面介绍了相关数据结构,下面再详细介绍 块设备对象结构 block_device 内核用结构block_device实例代表一个块设备对象,如:整个硬盘或特定分区.如果该结构代表一个分区,则其成员bd_part指向设备的分区结构.如果该结构代表设备,则其成员bd_disk指向设备的通用硬盘结构gendisk 当用户打开块设备文件时,内核创建结构block_device实例,设备驱动程序还将创建结构gendisk实例,分配请求队列并注册结构block_device实例. 块设备对象结构blo