CÓïÑÔ³ÌÐòÉè¼Æ½Ì³Ì´ð°¸£¨±±Óʰ棩Ñî·Ã÷ ¹ùºÆÖ¾(8)

2019-03-28 13:50

if(p==NULL)/*Èç¹û²åÈë¿Õ±í*/ { p=r; r->next=NULL; printf(\ }

else

{ while(x>p->sid) /*ÕÒµ½²åÈëµÄλÖ㬰´Ñ§ºÅ´óС¡££¨ÕÒµ½Î»ÖûòÕßµ½Á˱íβ¶¼»áÌø³öÑ­»·£©*/ { if(p->next==NULL)break; p=p->next; } if(xsid) /*²åµ½ÖмäλÖÃ*/ { r->sid=p->sid; r->average=p->average; p->sid=x; p->average=y; r->next=p->next; p->next=r; printf(\ } else if(x==p->sid) /*ѧºÅ²»ÄÜÏàͬ*/

printf(\ else /*²åµ½Ä©Î²*/ { p->next=r; r->next=NULL; printf(\ } }

return head; }

stu *get(stu *head,int n) /*µÃµ½Î»ÖÃΪnµÄ½áµãµÄÖ¸Õë*/ { stu *p;int i; p=head->next; if(n==0) return head; else { for(i=1;inext; return p; } }

stu *delete(stu *head,int sid) { stu *p,*q;int temp=0,i=0; p=head->next; if(!p)

36

{ printf(\ press eny key back.\±í¿Õ*/ else { while(p) /*²éÕÒѧºÅΪsidµÄ½áµãµÄÖ¸Õë*/ {i++; /*±ê¼ÇѧºÅΪsidµÄ½áµãµÄλÖÃ*/ if(p->sid==sid) {temp=1;break;} /*temp=1±ê¼ÇÕÒµ½ÁË*/ p=p->next; } if(temp==1) /*Èç¹ûÓÐѧºÅΪsidµÄ½áµã*/ { q=get(head,i-1);/*µÃµ½sidµÄǰһ¸ö½áµãµÄÖ¸Õë*/ q->next=p->next; free(p); printf(\ return head; } else /*ûÓÐÕÒµ½*/ { printf(\ return head; } } }

void print(stu *head) { stu *p; p=head->next; if(!p){printf(\ press eny key back.\ while(p) { printf(\ p=p->next; } }

main() { stu *p1,*p2; char ch1; int n,i=0,j=0; head=create(); do {clrscr(); printf(\ \ printf(\ printf(\ printf(\ \

37

printf(\ \ printf(\ ............choice (1-5).............\ ch1=getch(); switch(ch1) { case '1': { clrscr(); printf(\ scanf(\ head=insert(head,i,j); printf(\ break; } case '2': { clrscr(); printf(\ \ scanf(\ p1=select(head,n); { if(p1) printf(\ else printf(\ } printf(\ break; } case '3': { clrscr();printf(\ \ scanf(\ head=delete(head,n); printf(\ break; } case '4': { clrscr(); printf(\ print(head); printf(\ break; } case '5': return; default: printf(\ press eny key back.\ }

}while(n); }

38

7¡¢

#include #define F sizeof(L) typedef struct list { char data;

struct list *next; }L;

L *set_list()

{ L *head,*p1,*p2; char c; int n=0;

head=(L *)malloc(F); head->next=0; /*½¨Á¢Á´±í*/ p1=p2=head;

printf(\ scanf(\ while(c!='*') { n++; if(n==1) p1->data=c; else

{ p1=(L *)malloc(F); p1->data=c; p2->next = p1; p2 = p1;

p1->next = 0; }

scanf(\ }

p1=head; while(p1)

{ printf(\ \ } printf(\ return head; }

void change_list(L *head1) /*Ëã·¨£ºp2Ö¸Ïò×îºóÒ»¸öÔªËØ£¬p1Ö¸ÏòµÚÒ»¸öÔªËØ¡£½»»»ËûÃǵÄÖµ£¬p1,p2ͬʱÍùÖм俿£¡£*/ { L *p1,*p2,*p3; int i,j,k,n=1; char temp;

p1=head1;p2=head1;p3=head1; while(p3->next)

{ p3=p3->next;n++; }/*ÇóÁ´³¤*/

for(i=n;i>(n/2);i--) /*ÍâÑ­»·Ê¹p1ºóÒÆ£¬p2Ç°ÒÆ¡£*/ { p2=head1;

39

for(j=1;jnext; /*p2Ö¸Ïò×îºóÒ»¸öÔªËØ*/ temp=p1->data;p1->data=p2->data;p2->data=temp;/*½»»»ËûÃǵÄÖµ*/ p1=p1->next;/*p1ÏòºóÒÆ*/ }

while(head1)

{ printf(\ \ } }

void main() { L *head; head=set_list(); change_list(head); getch(); }

µÚÊ®ÕÂ

1: ´ð£º ¹²ÓÃÌåʹ¼¸ÖÖ²»Í¬ÀàÐ͵ÄÖµ´æ·ÅÔÚͬһÄÚ´æÇøÓòÖС£ ÀýÈ磬 °ÑÒ»¸öÕûÐÍÖµºÍ×Ö·ûÖµ·ÅÔÚͬһ¸ö´æ´¢ÇøÓò£¬ ¼ÈÄÜÒÔÕûÐÍ´æ´¢£¬ ÓÖÄÜÒÔ×Ö·û´æ´¢¡£¹²ÓÃÌåÀàÐ͵͍ÒåÐÎʽÓë½á¹¹ÌåµÄ¶¨ÒåÐÎʽÏàͬ£¬ Ö»ÊÇÆäÀàÐ͹ؼü×Ö²»Í¬£¬¹²ÓÃÌåµÄ¹Ø¼ü×ÖΪunion.Ò»°ã ÐÎʽΪ£º

union ¹²ÓÃÌåÀàÐÍÃû { ³ÉÔ±Áбí

}£»

ÀýÈ磺 union data { int i; char ch; float f;

}£»

2£º ´ð£º ¹²ÓÃÌ岻ͬÓë½á¹¹Ì壬ijһʱ¿Ì£¬´æÓë¹²ÓÃÌåµÄÖ»ÓÐÒ»ÖÖÊý¾Ý£¬¶ø½á¹¹ÌåÊÇËùÓгɷֶ¼´æ´¢×ŵġ£¼´¹²ÓÃÌåÊǼ¸ÖÖÊý¾ÝÖµµÄ¸²¸Ç´æ´¢£¬¼¸ÖÖ²»Í¬ÀàÐ͵ÄÊý¾ÝÖµ´ÓͬһµØÖ·¿ªÊ¼´æ´¢£¬µ«ÊÇÈÎһʱ¿ÌÖ»ÄÜ´æ´¢ÆäÖÐÒ»ÖÖÊý¾Ý£¬¶ø²»ÊÇͬʱ´æ´¢¶àÖÖÊý¾Ý¡£·ÖÅ䏸¹²ÓÃÌåµÄ´æ´¢ÇøÓò´óСÖÁÉÙÒªÓд洢ÆäÖÐ×î´óµÄÒ»ÖÖÊý¾ÝËùÐèÒªµÄ´æ´¢¿Õ¼äÁ¿¡£

3£º ´ð£º ÔÚʵ¼ÊÓ¦ÓÃÖУ¬ÓеıäÁ¿Ö»Óм¸ÖÖ¿ÉÄܵÄȡֵ¡£Èç±íʾÑÕÉ«µÄÃû³Æ£¬±íʾÔ·ݵÄÃû³ÆµÈ¡£ÎªÁËÌá¸ß³ÌÐòÃèÐðÎÊÌâµÄÖ±¹ÛÐÔ£¬ANSI CÒýÈëÔÊÐí³ÌÐòÔ±¶¨Òåö¾ÙÀàÐ͵ĻúÖÆ¡£³ÌÐòÓÃö¾Ù·½·¨

40


CÓïÑÔ³ÌÐòÉè¼Æ½Ì³Ì´ð°¸£¨±±Óʰ棩Ñî·Ã÷ ¹ùºÆÖ¾(8).doc ½«±¾ÎĵÄWordÎĵµÏÂÔØµ½µçÄÔ ÏÂÔØÊ§°Ü»òÕßÎĵµ²»ÍêÕû£¬ÇëÁªÏµ¿Í·þÈËÔ±½â¾ö£¡

ÏÂһƪ£ºÂÛÎÄÄ£°å

Ïà¹ØÔĶÁ
±¾ÀàÅÅÐÐ
¡Á ×¢²á»áÔ±Ãâ·ÑÏÂÔØ£¨ÏÂÔØºó¿ÉÒÔ×ÔÓɸ´ÖƺÍÅŰ棩

ÂíÉÏ×¢²á»áÔ±

×¢£ºÏÂÔØÎĵµÓпÉÄÜ¡°Ö»ÓÐĿ¼»òÕßÄÚÈݲ»È«¡±µÈÇé¿ö£¬ÇëÏÂÔØÖ®Ç°×¢Òâ±æ±ð£¬Èç¹ûÄúÒѸ¶·ÑÇÒÎÞ·¨ÏÂÔØ»òÄÚÈÝÓÐÎÊÌ⣬ÇëÁªÏµÎÒÃÇЭÖúÄã´¦Àí¡£
΢ÐÅ£º QQ£º