使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。完成函数ToUpper(char*des,char*str),该函数实现把str字符串中小写字符转换成大写字符,并存发在des中。 例如:str=“aBcdr

admin2016-10-28  38

问题 使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。完成函数ToUpper(char*des,char*str),该函数实现把str字符串中小写字符转换成大写字符,并存发在des中。
例如:str=“aBcdrFGHijK”;
则:des=“ABCDEFGHIJK”;
注意:不能修改程序的其他部分,只能补充ToUpper0函数。
#include<iostream.h>
#define MAXLEN1024
void ToUpper(char*des,char*str)
{

}
void main()
{
char dest[MAXLEN];
char*str="aBcdrFGHijK";
ToUpper(dest,str);
cout<<dest<<endl:
return;
}

选项

答案for(int i=0;str[i] !=0;i++) { if(str[i]>=’a’ && str[i]<=’z’)//比较是否是小写字母 { des[i]=str[i]-’a’+’A’;//替换成大写字母 } else { des[i]=str[i];//其他情况不变 } des[i+1]=0; }

解析 (1)由审题分析可知,可利用循环来逐个检索str中的字符,循环变量i从0开始,直到str数组的结束,即str[i1==0为循环结束条件。
(2)小写字母的判别方式为:str>=’a’&&str<=’z’,即该字符比’z’小,而且比’a’大,如果满足该条件则在该字符基础上加上(’A’-’aa)值转换为大写字母;如果是其他字符的话,无需转换,直接刚该字符放到des数组中。
转载请注明原文地址:https://kaotiyun.com/show/wONp777K
0

最新回复(0)