st:字符串;
I,j,t,k:longint;
答:數組[1..60]的布爾;//英文字母是否大寫?
數組[1..60]的憧憬;//大寫英文字母的編碼
開始
readln(ST);//讀取字符串
fillchar(a,sizeof(a),true);//初始化為全英文字母。
t:= 0;
對於i:=1到長度(st) do
開始
if(ord(ST[I])& gt;=65)和(ord(ST[I])& lt;=90)那麽
開始
t:= t+1;
b[t]:= ord(ST[I]);//如果是英文字母,保存它的代碼。
結束
else a[I]:= false;//如果不是,則標記為非英文字母,不需要更改。
結束;
對於i:=1到t-1 do
for j:=i+1 to t do
如果b[I]& gt;b[j]那麽
開始
k:= b[I];
b[I]:= b[j];
b[j]:= k;
結束;//選擇排序
I:= 1;
for j:=1 to t do
開始
而a[I]= false do I:= I+1;//找到英文字母的位置
ST[I]:= chr(b[j]);//更改為新的英文字母排列
I:= I+1;
結束;
writeln(ST);
結束。
註意:因為題目沒有說如何處理60個字符以上的英文單詞,所以這個程序只能處理60個字符以下的英文單詞!