C语言编程题—N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun,它的功能是:求出平均分,由函数值返回。例如,若学生的成绩是:85,76,69,85,91,
生活随笔
收集整理的這篇文章主要介紹了
C语言编程题—N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun,它的功能是:求出平均分,由函数值返回。例如,若学生的成绩是:85,76,69,85,91,
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
C語言編程題
設計程序,N名學生的成績已在主函數中放入一個帶頭節點的鏈表結構中,h指向鏈表的頭節點。請編寫函數fun,它的功能是:求出平均分,由函數值返回。例如,若學生的成績是:85,76,69,85,91,72,64,87, 則平均分應當是:78.625
#include <stdio.h> #include <stdlib.h> #define N 8 struct slist { double s; struct slist *next; }; typedef struct slist STREC; double fun( STREC *h ) { STREC *p;double sum=0,avg;int n=0;p=h->next;while(p){sum=sum+p->s;n++;p=p->next;avg=sum/n;}return avg; } STREC * creat( double *s) //創建帶頭結點的單鏈表 { STREC *h,*p,*q; int i=0; h=p=(STREC*)malloc(sizeof(STREC)); p->s=0; while(i<N) { q=(STREC*)malloc(sizeof(STREC)); q->s=s[i]; i++; p->next=q; p=q; } p->next=0; return h; } void outlist( STREC *h) //輸出鏈表 { STREC *p; p=h->next; printf("head"); do { printf("->%4.1f",p->s); p=p->next; } while(p!=0); printf("\n\n"); } void main() { double s[N]={85,76,69,85,91,72,64,87},ave; STREC *h; h=creat( s ); outlist(h); ave=fun( h ); printf("ave= %6.3f\n",ave); }運行示例
C語言不迷路。
需要分析可以到微信公眾號發送問題或者在評論區留言,有問必答!
想了解我的C語言學習筆記等更多知識請關注公眾號:
量子云基地
總結
以上是生活随笔為你收集整理的C语言编程题—N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun,它的功能是:求出平均分,由函数值返回。例如,若学生的成绩是:85,76,69,85,91,的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: FMVSS 302 联邦交通车辆安全标准
- 下一篇: 硬件nat关闭还是开启_路由器开启NAT