#1026: 求救orz


fuho (~)

學校 : 國立臺灣師範大學附屬高級中學
編號 : 1488
來源 : [125.228.43.155]
最後登入時間 :
2023-01-31 09:52:22
c044. 10008 - What's Cryptanalysis -- UVa10008 | From: [122.116.162.36] | 發表日期 : 2008-12-06 18:33

一直說我沒有輸出

有人可以幫我看一下程式碼哪裡出錯了嗎?

雖然我這樣寫是有點麻煩

http://cat.nknush.kh.edu.tw/ZeroJudge/ShowCode?solutionid=95803

 
#1039: Re:求救orz


ken1114 (拚拚拚徒)

學校 : 新北市立福和國民中學
編號 : 3221
來源 : [140.131.149.248]
最後登入時間 :
2011-07-26 10:20:14
c044. 10008 - What's Cryptanalysis -- UVa10008 | From: [59.117.65.77] | 發表日期 : 2008-12-08 20:08

一直說我沒有輸出

有人可以幫我看一下程式碼哪裡出錯了嗎?

雖然我這樣寫是有點麻煩

http://cat.nknush.kh.edu.tw/ZeroJudge/ShowCode?solutionid=95803


學長,這是C的寫法,不過還是有用到struct。
#include <stdio.h>

struct LA{
 char data;
 int time;
};
struct LA a[30];

int main(){
 int n,i,j;
 char c;
 scanf("%d",&n);
 scanf("%c",&c);
 while(n!=0){
  scanf("%c",&c);
  while(c!=10){
   if(c>='A' && c<='Z'){
    a[c-64].time++;
    a[c-64].data=c;
   }
   else if(c>='a' && c<='z'){
    a[c-96].time++;
    a[c-96].data=c-32;
   }
   scanf("%c",&c);
  }
  n--;
 }
 for(i=1;i<=26;i++){
  for(j=1;j<i;j++){
   if(a[j].time<a[i].time){
    c=a[j].data;
    a[j].data=a[i].data;
    a[i].data=c;
    n=a[j].time;
    a[j].time=a[i].time;
    a[i].time=n;
   }
   else if(a[i].time==a[j].time && a[j].data>a[i].data){
    c=a[j].data;
    a[j].data=a[i].data;
    a[i].data=c;
    n=a[j].time;
    a[j].time=a[i].time;
    a[i].time=n;
   }
  }
 }
 for(i=1;i<=26;i++){
  if(a[i].time!=0){
   printf("%c %d\n",a[i].data,a[i].time);
   a[i].time=0;
  }
  else
   break;
 }
 return 0;
}
p.s.這不是我寫的

 
ZeroJudge Forum