1.我上交代码的时候显示超时?为什么?代码格式有什么需要改进的吗?初学者,求解惑!感谢!(在VC上是能得出答案的
。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct line{
int a;
struct line *next;
}line;
#define LEN sizeof(line)
void Free(line *head){
line *p;
while(head!=NULL){
p=head->next;
free(head);
head=p;
}
}
void prin(line *head){
line *p=head->next;
while(p!=NULL){
printf("%d ",p->a);
p=p->next;
}
}
void change(line *head,int count){
line *p,*tail;
while(count!=0){
tail=head->next;
p=tail->next;
while(p!=NULL){
if((p->a)<(tail->a)){
(p->a)=(tail->a)+(p->a);
(tail->a)=(p->a)-(tail->a);
(p->a)=(p->a)-(tail->a);
}
tail=p;
p=p->next;
}
count--;
}
}
void main(){
line *p,*head1,*tail,*head2;
int count=0;
head1=tail=(line *)malloc(LEN);
head1->next=tail->next=NULL;
do
{
p=(line *)malloc(LEN);
scanf("%d",&p->a);
tail->next=p;
p->next=NULL;
tail=p;
count++;
}while(getchar()!='\n');
head2=tail=(line *)malloc(LEN);
head2->next=tail->next=NULL;
do
{
p=(line *)malloc(LEN);
scanf("%d",&p->a);
tail->next=p;
p->next=NULL;
tail=p;
count++;
}while(getchar()!='\n');
tail->next=head1->next;
change(head2,count);
prin(head2);
Free(head2);
head1=head2=p=tail=NULL;
}
vc上无报错
!
哪怕给出建议也好,谢谢了!