满意答案
galgamecyf
2015.07.16
采纳率:49% 等级:9
已帮助:1513人
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286#include<stdio.h>#include<stdlib.h>#include<time.h>#include<conio.h> typedef struct snake{ int a; int b; struct snake *u; struct snake *n;}snake,*snake1;typedef struct food{ int a; int b;}food;void main(){ char c,c0 = 'd'; int i,j,k,n=1,t,at; snake p,q; snake *dd,*dd0,*dd1,*dd2; food f; srand(time(NULL)); p.u = NULL; p.n = &q; p.a = 5;p.b = 6;q.a = 5;q.b = 5; q.u = &p;q.n = NULL; dd=dd2= &q; f.a=(rand()%15+1); f.b=(rand()%15+1); while(1) { srand(time(NULL)); system("cls"); for(i = 0;i a && j == dd->b) { printf("㊣"); t = 1; break; } dd = dd->u; } if(t == 0) printf(" "); } }printf("\n"); } at = 0; dd =dd2; for(i=0;ia && p.b == dd->b) { printf("game over,感谢试玩!!本游戏由付宇璠与胡群阳共同制作,如有雷同,纯属巧合。\n"); exit(0); } dd = dd->u; } if(p.a == f.a && p.b == f.b) { dd = dd2; at =1; f.a = (rand()%15+1); f.b = (rand()%15+1); for(i=0;ia && f.b == dd->b) { f.a = dd2->a; f.b = dd2->b; break; } } n++; } if(kbhit()) { c = getch(); dd = dd2; if(c == 'w' && c0 != 's') { if(at == 1) { dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; } dd = dd2; for(i = 0; iu; dd->b = dd1->b; dd->a = dd1->a; dd = dd->u; } if(p.a == 1) p.a = 15; else p.a = (p.a-1)%15; } else if(c == 's' && c0 != 'w') { if(at == 1) { dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; } dd = dd2; for(i = 0; iu; dd->b = dd1->b; dd->a = dd1->a; dd = dd->u; } p.a = (p.a%15)+1; } else if(c == 'a' && c0 != 'd') { if(at == 1) { dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; } dd = dd2; for(i = 0; iu; dd->b = dd1->b; dd->a = dd1->a; dd = dd->u; } if(p.b == 1) p.b = 15; else p.b = (p.b-1)%15; } else if(c == 'd' && c0 != 'a') { if(at == 1) { dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; } dd = dd2; for(i = 0; iu; dd->b = dd1->b; dd->a = dd1->a; dd = dd->u; } p.b = (p.b%15)+1; } else { goto qq; } c0 = c; } else {qq: if(c0 == 'w') { if(at == 1) { dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; } dd = dd2; for(i = 0; iu; dd->b = dd1->b; dd->a = dd1->a; dd = dd->u; } if(p.a == 1) p.a = 15; else p.a=(p.a-1)%15; } else if(c0 == 's') { if(at == 1) { dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; } dd = dd2; for(i = 0; iu; dd->b = dd1->b; dd->a = dd1->a; dd = dd->u; } p.a=(p.a%15)+1; } else if(c0 == 'a') { if(at == 1) { dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; } dd = dd2; for(i = 0; iu; dd->b = dd1->b; dd->a = dd1->a; dd = dd->u; } if(p.b == 1) p.b = 15; else p.b=(p.b-1)%15; } else if(c0 == 'd') { if(at == 1) { dd0 =(snake1)malloc(sizeof(snake)); dd0->a = dd2->a;dd0->b = dd2->b; dd0->n = NULL;dd0->u = dd2; dd2=dd0; } dd = dd2; for(i = 0; iu; dd->b = dd1->b; dd->a = dd1->a; dd = dd->u; } p.b=(p.b%15)+1; } } fflush(stdin); dd = &q; _sleep(200); }}
03分享举报