Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<stdlib.h>
- typedef struct data
- {
- int a;
- struct data *next,*prev;
- } data;
- data *head=NULL;
- data *tail=NULL;
- void enQueue(int x)
- {
- data *node=(data*)malloc(sizeof(data));
- node->a=x;
- node->prev=NULL;
- node->next=NULL;
- if(head==NULL)
- {
- head=node;
- tail=node;
- return;
- }
- tail->next=node;
- node->prev=tail;
- tail=node;
- return;
- }
- int deQueue()
- {
- int x;
- data *temp=head;
- if(head==NULL)
- {
- printf("NO DATA FOUND/n");
- return -1;
- }
- else if(temp->next==NULL)
- {
- x=temp->a;
- free(temp);
- return x;
- }
- head=temp->next;
- x=temp->a;
- free(temp);
- return x;
- }
- void print()
- {
- data *temp=head;
- while(temp!=NULL)
- {
- printf("%4d",temp->a);
- temp=temp->next;
- }
- printf("\n");
- return;
- }
- int main()
- {
- int i,a1,a2,a3,a4,x,count=0,sum=0,ans;
- scanf("%d",&a1);
- for(i=0; i<a1; i++)
- {
- scanf("%d",&a3);
- enQueue(a3);
- }
- scanf("%d",&a4);
- if(a1<a4)
- {
- for(i=0; i<a1; i++)
- {
- count++;
- x=deQueue();
- sum+=x;
- }
- ans=sum/count;
- printf("Average :%5d\n",ans);
- return 0;
- }
- for(i=0; i<a4; i++)
- {
- count++;
- x=deQueue();
- sum+=x;
- }
- print();
- ans=sum/count;
- printf("Average :%5d\n",ans);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement