#14071: 求大神點解input的問題....


xxxx0720 (沈韋辰)

學校 : 屏北高級中學
編號 : 60721
來源 : [101.9.129.16]
最後登入時間 :
2020-03-01 01:34:35
a528. 大數排序 | From: [106.1.156.204] | 發表日期 : 2018-06-08 16:44

我的程式在電腦都能執行,放上網站卻一直CE...

我試過如果用C去送,則會顯示我沒有宣告結構

如果用C++去送,又說沒有宣告 gets() 函數

程式試過沒有問題,語法上到底是哪裡錯了求高人指點!

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

/*#include<iostream>

using namespace std;*/


struct number{
int L;
char ori[101];
char ver[101];
};
int main(void)
{
int i,j,n;
char N[10];
number a[1000];
int t;
char temp[101];
while(gets(N))
{
n=atoi(N);
for(i=0;i<n;i++)
{
gets(a[i].ori);
strcpy(a[i].ver,a[i].ori);
a[i].L=strlen(a[i].ori);
if(a[i].ver[0]=='-')
{
while(a[i].ver[1]=='0')
{
for(j=1;j<=a[i].L-1;j++)
{
a[i].ver[j]=a[i].ver[j+1];

}
a[i].L--;
}
}
else
{
while(a[i].ver[0]=='0')
{
for(j=0;j<=a[i].L-1;j++)
{
a[i].ver[j]=a[i].ver[j+1];

}
a[i].L--;
}
}


if(a[i].ver[0]=='-')
{ a[i].L*=-1;
a[i].L++;}

}

for(j=0;j<n-1;j++)
{
for(i=0;i<n-1-j;i++)
{
if(a[i].L>a[i+1].L)
{
t=a[i].L;
a[i].L=a[i+1].L;
a[i+1].L=t;
strcpy(temp,a[i].ori);
strcpy(a[i].ori,a[i+1].ori);
strcpy(a[i+1].ori,temp);
strcpy(temp,a[i].ver);
strcpy(a[i].ver,a[i+1].ver);
strcpy(a[i+1].ver,temp);
}

else if(a[i].L==a[i+1].L)
{
if(strcmp(a[i].ver,a[i+1].ver)>0)
{
t=a[i].L;
a[i].L=a[i+1].L;
a[i+1].L=t;
strcpy(temp,a[i].ori);
strcpy(a[i].ori,a[i+1].ori);
strcpy(a[i+1].ori,temp);
strcpy(temp,a[i].ver);
strcpy(a[i].ver,a[i+1].ver);
strcpy(a[i+1].ver,temp);

}
}
}
}
for(i=0;i<n;i++)
printf("%s\n",a[i].ori);
}
return 0;
}

 

 
#14072: Re:求大神點解input的問題....


anandrewboy70900 (ShowTsai)

學校 : 國立中央大學
編號 : 27736
來源 : [203.204.218.144]
最後登入時間 :
2024-10-11 16:21:37
a528. 大數排序 | From: [140.115.204.235] | 發表日期 : 2018-06-08 17:13

 

在純c語言

宣告struct要加struct

struct number a[1000];




 
ZeroJudge Forum