利用creat创建链表 利用outlist打印链表 利用 fun 函数 返回链表中最大的值
2012-03-21 00:55
330 查看
#include <stdio.h> #include <stdlib.h> #define N 8 struct slist { double s; struct slist *next; }; typedef struct slist STREC; double fun( STREC *h ) { int i; double max; for(i=0;i<N;i++) { h=h->next; if(max<(h->s)) max=(h->s); }; return max; } STREC *creat( double *s) //定义返回值为 STREC类型的 地址 形参为指向实型的指针 { STREC *h,*p,*q; //定义三个指向STREC型的指针 int i=0; h=p=(STREC*)malloc(sizeof(STREC)); //动态分配STREC型大小空间首地址赋给 h、p 头结点 p->s=0; //头结点数据域 为 0 while(i<N) { q=(STREC*)malloc(sizeof(STREC)); // 动态分配 size 空间 首地址赋给q q->s=s[i]; i++; p->next=q; // 建立连接 把后一个节点的地址赋给直接前驱的指针域 p=q; // p后移 } p->next=0; //尾节点 的指针域赋为空 return h; //返回头节点的地址 } outlist(STREC *h) // 带入头指针 打印链表 { STREC *p; p=h->next; printf("head"); do { printf("->%2.0f",p->s); p=p->next; } while(p!=0); printf("\n\n"); } main() { double s ={85,76,69,85,91,72,64,87}, max; STREC *h; h=creat(s); outlist(h); max=fun(h); printf("max=%6.1f\n",max); }
相关文章推荐
- 1. 给定两个整形变量的值,将两个值的内容进行交换。 2. 不允许创建临时变量,交换两个数的内容(附加题) 3. 求10 个整数中最大值。 4. 写一个函数返回参数二进制中 1 的个数
- 编写函数fun(int *a,int n,int *odd,int *even),功能是:求出数组a[]中所有偶数之和,利用指针even返回偶数之和
- 利用函数重载分别创建三个函数,分别是计算2个数的和,3个数的和,4个数的和/利用函数重载分别创建三个函数,分别计算int类型数组中最大值,stirng 类型数组中最长的字符串,double类型数组中最
- 关于c语言用双重指针在无需返回的情况下于函数中创建链表的一点小小发现
- /有一个函数fun能返回0和1两个值,返回0和1的概率都是1/2,问怎么利用这个函数得到另一个函数fun2,使fun2也只能返回0和1,且返回0的概率为1/4,返回1的概率为3/4
- #奇葩论--在C语言中利用函数递归创建链表#
- 1. 给定两个整形变量的值,将两个值的内容进行交换。 2. 不允许创建临时变量,交换两个数的内容(附加题) 3. 求10 个整数中最大值。 4. 写一个函数返回参数二进制中 1 的个数
- MFC中,我从一个对话框,同时在按钮的消息处理函数中利用DoModal()函数一级一级的创建许多模态对话框,那么怎样从某个子对话框返回第一个对话框呢?
- 树的基本结构,以及利用链表实现树的各项操作(创建、添加/删除/打印树节点、销毁等等)
- 编写函数fun(int *a, int n, int *odd, int *even),功能是:求出数组a[]中所有奇数之和以及所有偶数之和。并利用指针odd返回奇数之和,利用指针even返回偶数
- N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。 请编写函数fun,它的功能是:找出学生的最高分,由函数值返回。c语言编程【22题】
- 写函数实现打印出1到最大的n位数,形参为n位数
- 动态创建链表及打印链表 (链表学习 一)
- 链表的创建 打印 反转
- 双向链表 C语言 (创建,插入,删除,判空,返回链表长度)
- C#利用lambda在函数中创建内部函数
- 第四节,利用别名实现函数返回多个值
- C:链表的操作,如何创建一个链表并打印
- 利用Win32的网络函数创建一个网络浏览器
- 写一个函数(maxLength)返回该参数中连续相同字母的最大个数及该字母