³¤ÕûÊýËÄÔòÔËËãʵÑ鱨¸æ ÏÂÔØ±¾ÎÄ

ÄÚÈÝ·¢²¼¸üÐÂʱ¼ä : 2026/5/24 17:47:47ÐÇÆÚÒ» ÏÂÃæÊÇÎÄÕµÄÈ«²¿ÄÚÈÝÇëÈÏÕæÔĶÁ¡£

{ if(h1->next!=0) { p1->prior->data-=1; p1->data+=10000; } } p1=p1->prior; }

if(h1->next->data>=10000) //´¦Àí×îÇ°ÃæµÄÊý { InsertNode(h1,0,h1->next->data/10000); h1->next->next->data%=10000; } if(h1->data<=-10000)

{ InsertNode(h1,0,h1->next->data/10000); h1->next->next->data%=-10000; } PrintNode(h1); }

void jian(DLNode *h1,DLNode *h2) //Á½ÊýÏà¼õ { DLNode *p1=h1->prior,*p2=h2->prior; while(p1!=h1&&p2!=h2) //ÿ¸öÁ´±íÔªËØÏà¼õ { p1->data-=p2->data ; p1=p1->prior; p2=p2->prior; } p1=h1->prior;

while(p1!=h1->next) //´¦ÀíÁ´±íÔªËØ { if(p1->data>=10000)

{ p1->prior->data+=p1->data/10000; p1->data%=10000; }

if(p1->data<0) //´¦Àí¸ºÊý { if(h1->next!=0) { p1->prior->data-=1; p1->data+=10000; } } p1=p1->prior; }

if(h1->next->data>=10000) //´¦Àí×îÇ°ÃæµÄÊý { InsertNode(h1,0,h1->next->data/10000); h1->next->next->data%=10000; } if(h1->data<=-10000)

{ InsertNode(h1,0,h1->next->data/-10000); h1->next->next->data%=-10000; } PrintNode(h1); }

int main() //Èë¿Úº¯Êý {

DLNode *head1,*head2; InitNode(&head1); InitNode(&head2);

char data1[N],data2[N]; char d1[10],d2[10]; int i,j,k; int xun; while(1)

{ printf(\ÊäÈëÊý¾Ý£º\\n\scanf(\ InitNode(&head1); InitNode(&head2); i=0;k=0;

while(data1[i]!=';') //½«Êý1ÓÃÁ´±í´¢´æ {

for(j=0;j<10;j++) d1[j]=0; j=0;

while(data1[i]!=';'&&data1[i]!=',') d1[j++]=data1[i++]; if(data1[i]==',') i++;

if(data1[0]=='-') //´¦ÀíÕý¸ºÊý

j=-(int)fabs(atoi(d1));//½«×Ö·û´®×ª»»³ÉÕûÊý else j=atoi(d1);

InsertNode(head1,k++,j); }

i=0; k=0;

while(data2[i]!=';') //½«Êý2ÓÃÁ´±í´¢´æ {

for(j=0;j<10;j++) d2[j]=0; j=0;

while(data2[i]!=';'&&data2[i]!=',') d2[j++]=data2[i++]; if(data2[i]==',') i++;

if(data2[0]=='-') //´¦ÀíÕý¸ºÊý j=-(int)fabs(atoi(d2)); else j=atoi(d2);

InsertNode(head2,k++,j); }

printf(\Ñ¡Ôñ¼Ó¼õ·¨£º1¡ª¼Ó·¨£¬2-¼õ·¨\\n\ scanf(\ switch(xun) {

case 1:if(strlen(data1)>strlen(data2)) //½Ï³¤µÄÊý×÷Ϊ±»¼ÓÊý add(head1,head2); else add(head2,head1); break;

case 2:if(strlen(data1)>strlen(data2)) //½Ï³¤µÄÊý×÷Ϊ±»¼õÊý jian(head1,head2); else jian(head2,head1); break;

default:break; }

DestroyNode(&head1); DestroyNode(&head2); } return 0; }