-1
我相信这个问题很清楚。
那么,如何通过pascal中的第一个字符串来排序字符串?
因为据我所知pascal没有本地排序功能,应该有一种方法可以将字母转换为数字,然后对它们进行排序......无论如何,这只是猜测。
感谢提前答案;)如何通过pascal中的第一个字符对字符串进行排序?
我相信这个问题很清楚。
那么,如何通过pascal中的第一个字符串来排序字符串?
因为据我所知pascal没有本地排序功能,应该有一种方法可以将字母转换为数字,然后对它们进行排序......无论如何,这只是猜测。
感谢提前答案;)如何通过pascal中的第一个字符对字符串进行排序?
program test;
var
nr:Integer;
mystrings:array [0..100] of string;
i:Integer;
tmp,tmp2,tmp3:String;
begin
WriteLn('Please input number of strings');
ReadLn(nr); //max 100 strings
for i:=0 to nr - 1 do
begin
str(i,tmp3);
Write('String['+tmp3+'] = ');ReadLn(mystrings[i]);
end;
// Now we sort the strings
i:=0;
repeat
tmp:=UpperCase(mystrings[i]);
tmp2:=UpperCase(mystrings[i+1]);
if tmp[1]>tmp2[1] then
begin
tmp:=mystrings[i];
mystrings[i]:=mystrings[i+1];
mystrings[i+1]:=tmp;
i:=-1;
end;
Inc(i);
until i=nr -1 ;
//Display strings sorted
for i:=0 to nr - 1 do
begin
WriteLn(mystrings[i]);
end;
Readln;
end.
希望它帮助;)
哇!真正令人惊讶的是,字符串实际上是可以轻松地相互比较的字符数组。谢谢! – Povylas 2011-05-29 15:22:43
那你希望发生的事情,如果第一个字符是相同的吗?什么样的字符串(ansi,utf16,...)?哪个实现pascal? – CodesInChaos 2011-05-29 12:31:16
如果第一个字符匹配,那么将它排序为第二个可选字符将会很好。 Ansi字符串类型会做。如果我理解你的最后一个问题,那么答案应该是:我正在使用Turbo Pascal。 – Povylas 2011-05-29 12:43:00
你想要什么样的字符排序?按顺序,还是更花哨的东西? – CodesInChaos 2011-05-29 12:43:54