正如标题中所述。
我正在编写一个程序,要求用户输入一个姓氏,然后输入名字,最后输入一个地址。
完成后,它打印出一张结果表,然后按字母顺序排列,首先是姓氏,然后是名字,最后是地址。
这一切都完成了。我只需要使表格始终打印出第一个字母为大写,其余为小写,即:
输入:jOHN SMith 输出:John Smith
我如何在Pascal中执行此操作?
以下是我为此部分编写的代码:
writeln();
write(UpCaseFirstChar(arrSurnames[count]):15);
write(UpCaseFirstChar(arrFirstNames[count]):15);
write(UpCaseFirstChar(arrAddress[count]):30);
writeln();
我有一个用于大写第一个字母的函数,如何将其更改为小写其余字母?
编辑:这是大写函数:
function UpCaseFirstChar(const S: string): string;
begin
Result := S;
if Length(Result) > 0 then
Result[1] := UpCase(Result[1]);
end;
编辑2:我想我弄明白了。以下是UpCase / LowerCase函数的新代码,以防任何人感兴趣:
function UpCaseFirstChar(const S: string): string;
var
i: integer;
begin
Result := S;
if Length(Result) > 0 then
Result[1] := UpCase(Result[1]);
for i := 2 to Length(Result) do
begin
Result[i] := LowerCase(Result[i]);
end;
end;
答案 0 :(得分:3)
您的更新比它需要的更详细。如果您仔细阅读文档,则函数LowerCase
将应用于字符串。所以你可以写:
function UpCaseFirstChar(const S: string): string;
begin
if Length(S) = 0 then
Result := S
else begin
Result := LowerCase(S);
Result[1] := UpCase(Result[1]);
end;
end;