#include <stdio.h>
#include <stdlib.h>
#include <time.h>
typedef struct ListNode{
int data;
struct ListNode *link;
}node;
node *head;
int Max();
int Min();
long Sum();
long Count();
double Ave();
int main(void) {
int n,x,i;
node *head=NULL, *tmp, *p, *q;
for(i=0;i<n;i++){
x=rand();
tmp = (node*)malloc(sizeof(node));
tmp->>
tmp->link = NULL;
if(head==NULL)head=tmp;
else{
if(x<head->data){tmp->link=head; head=tmp;}
else{
p=head;
while(p!=NULL&&x>p->data){
q=p;
p=p->link;
}
tmp->link=q->link;
q->link=tmp;
}
}
}
printf("최대값 %d\n",Max());
printf("최솟값 %d\n",Min());
printf("합계 %d\n",Sum());
printf("평균 %lf\n",Ave());
p=head;
while(p!=NULL){
p=head->link;
head=p;
}
return 0;
}
int Max(void)
{
int max;
node *tmp;
max=head->data;
for(tmp=head->link;tmp!=NULL;tmp=tmp->link){
if(max<tmp->data)max=tmp->data;
}return max;
}
int Min(void)
{
int min;
node *tmp;
min=head->data;
for(tmp=head->link;tmp!=NULL;tmp=tmp->link){
if(min>tmp->data)min=tmp->data;
}return min;
}
long Sum(void)
{
long sum=0;
node *tmp;
for(tmp=head->link;tmp!=NULL;tmp=tmp->link){sum +=tmp->data;}
return sum;
}
long Count(void)
{
int cnt=0;
node *tmp;
for(tmp=head->link;tmp!=NULL;tmp=tmp->link)cnt++;
return cnt;
}
double Ave(void)
{
float ave=0.0;
ave=(float)Sum()/Count();
return ave;
}
자꾸 런타임에러뜨넹....
뭐가 문제일까
댓글 0