使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char*s),该函数完成以下功能: (1)把s中的大写字母转换成小写字母,把其中的小写字母转换成大写字母。并且在函数中调用写函数WriteFile()将结果输出到modi

admin2017-09-20  25

问题 使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char*s),该函数完成以下功能:
    (1)把s中的大写字母转换成小写字母,把其中的小写字母转换成大写字母。并且在函数中调用写函数WriteFile()将结果输出到modi2.txt文件中。
  例如:s=“helloTEST”,则结果为:s=“HELLOtest”
  (2)完成函数WriteFile(char*s),把字符串输入文件中。
    提示:  打开文件使用的第二参数为ios_base::binary Jios—base::app。
    注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
#include
#include
#include
using namespace std;
Void WriteFile(char*s)
{
}
void fun(char*s)
{
}
void ClearFile()
{
    ofstream outl ;
    outl.open(“modi2.txt”);
    out1.Close();
}
int main()
{
    C1earFile();
    char s[1 02 4];
    cout<<“please input a string:”<    Cin.getline(s,1 02 4);
    fun(s);
    return 0;
}

选项

答案(1)void WriteFile(char*S)中的命令语句: Ofstream outl ; outl.open(“modi 2.txt”,ios base ::binary f i0S base::app);//打开文件modi2 outl<=‘A’&&S[i]<=‘Z’) //如果是大写字符,转换为小写字符 { s[i]=S[i]一‘A’+‘a’; //- S[i]一’A’+‘a’等于字符s[i]+32 } Else if(s[i]>=‘a’&&S[i]<=‘z’) //如果是小写字符,转换为大写字符 { S[i]=s[i]一‘a’+‘A’; // s[i]’a’+’A’等于字符 s[i]一32 } } WriteFile(s);

解析 (1)本题要求实现两个函数的功能,其中WriteFile(char*s)实现把字符串输入到文件中;fun(char*s)函数实现大写字母转换成小写字母,把其中的小写字母转换成大写字母。其中大小写字母之问的ASCⅡ码差为32。
(2)从已给部分源程序的main主两数开始入手,首先实现WriteFile函数,然后再实现fun函数,并在其中调用WriteFile函数。
转载请注明原文地址:https://kaotiyun.com/show/bTAp777K
0

最新回复(0)