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;
- struct data *pre;
- } data;
- data *head=NULL;
- data *tail=NULL;
- void enQueue (int x)
- {
- data *newnode=(data*)malloc(sizeof(data));
- newnode->a=x;
- newnode->next=NULL;
- newnode->pre=NULL;
- if(head==NULL)
- {
- head=newnode;
- tail=newnode;
- return ;
- }
- newnode->pre=tail->next;
- tail->next=newnode;
- tail=newnode;
- return;
- }
- int deQueue()
- {
- int x;
- data *temp=head;
- if(head==NULL)
- {
- printf("nothing\n");
- return -1;
- }
- else if(temp->next==NULL)
- {
- head=NULL;
- tail=NULL;
- free(temp);
- return x;
- }
- head=temp->next;
- x=temp->a;
- free(temp);
- head->pre=NULL;
- return x;
- }
- void print()
- {
- data *temp=head;
- while(temp!=NULL)
- {
- printf("%d\n",temp->a);
- temp=temp->next;
- }
- printf("\n");
- }
- int main ()
- {
- int n,i,m,j,k;
- float p;
- scanf("%d",&n);
- for(i=1; i<=n; i++)
- {
- scanf("%d",&m);
- enQueue(m);
- }
- scanf("%d",&j);
- for(i=1; i<=j; i++)
- {
- // scanf("%d",&k);
- p=deQueue();
- }
- print();
- printf("average %lf\n",p/3);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement