首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char* s),该函数完成以下功能: (1)把s中的大写字母转换成小写字母,把其中的小写字母转换成大写字母。并且在函数中调用写函数WriteFile()将结果输出到mod12.t
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char* s),该函数完成以下功能: (1)把s中的大写字母转换成小写字母,把其中的小写字母转换成大写字母。并且在函数中调用写函数WriteFile()将结果输出到mod12.t
admin
2016-11-22
34
问题
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char* s),该函数完成以下功能:
(1)把s中的大写字母转换成小写字母,把其中的小写字母转换成大写字母。并且在函数中调用写函数WriteFile()将结果输出到mod12.txt文件中。
例如:s="helloTEST”,则结果为:s="HELLOtest"
(2)完成函数WriteFile(char*s),把字符串输入文件中。
提示:打开文件使用的第二参数为ios_base::binary|ios_ base::app。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
#include<iostream>
#include<fstream>
#include<cmath>
using namespace std;
void WriteFile(char*s)
{
}
void fun(char*s)
{
}
void ClearFile()
{
ofstream outl;
outl.open("modi2.txt");
outl.close(),
}
int main()
{
ClearFile();
char s[1024];
cout<<"please input a string: "<<endl;
cin.getline(s,1024);
fun(s),
return 0;
}
选项
答案
(1) void WriteFile(char* s)中的命令语句: ofstream outl: outl.open(”mod12.txt”,ios_base:.binarylios_base::app);//打开文件mod12 outl<<s; //写入字符串s outl.close(), (2) void fun(char*s)中的命令语句: for(int i=0;s[i]!=0;i++) //循环判断每一个字符 { if(s[i]>=’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’等于字符s[1]一32 } } WriteFile(s);
解析
(1)奉题要求实现两个函数的功能,其中WriteFile(char*s)实现把字符串输入到文件中;fun(char*’s)函数实现大写字母转换成小写字母,把其中的小写字母转换成大写字母。
其中大小写字母之间的ASCII码差为32。
(2)从已给部分源程序的main主函数开始入手,首先实现WriteFile函数,然后再实现fun函数,并在其中调用WriteFile函数。
(3)在WriteFile(char*s)函数中,利用标准流ofstream实现字符串写入文件mod12.txt。
(4)在fun函数中,利用for循环逐个判断字符是大写还是小写。
(5)如果是大写,那么加上32实现大写转换为小写。否则,就减去32,实现小写到大写的转换。最后调用前面实现的WriteFile函数,将字符串写入文件。
转载请注明原文地址:https://kaotiyun.com/show/ozAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
假定MyClass为一个类,则该类的拷贝构造函数的声明语句为
有如下程序:#include〈iostream〉usingnamespacestd;classBase{private:charc;public:Base(charn)
C++是通过______译成目标语言的。
下面程序的结果是#include<iostream.h>classA{inta;public:A():a(1){}voidshowa(){cout<<a;
运算符函数调用格式的表达式:y/x++与表达式:y.operator/(operator++(x,O))含义相同,由此可看出()。
下列叙述中正确的是
当循环队列非空且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算。这种情况称为______。
下列关于关系运算的叙述中正确的是
有如下函数模板声明: template<typename T> TMax(T a,T b){return(a>=b)?a:b;} 下列对函数模板Max()的调用中错误的是( )。
软件工程管理的具体内容不包括对( )管理。
随机试题
一个聋人,其双耳的功能正常,其中枢神经系统受损的部位是_______。
中国人花在享受和奢侈品上的钱比美国人少。
系统性红斑狼疮气营热盛证,其中医治法是
患儿,男,8岁。患水痘,皮疹分布较密,疹色紫暗,疱浆混浊,壮热不退,烦躁不安,口渴欲饮,面红目赤,大便干结,小便短黄,舌红苔黄糙,脉数有力。根据患儿证型,其治法应为
室外地面的混凝土垫层宣设伸缝,其间距和缝宽宜采用下列哪一项?[2001年第062题]
涉及城市规划行政管理可以提起行政复议的情形有()。①对行政机关作出的警告、没收非法财物、责令停产停业等不服的;②对行政机关作出的有关许可证、执照、资质证等证书变更、中止、撤销的决定不服的;③认为行政机关违法要求履行义务的;④认为符合法定条
财产清查的关键足要解决()的问题。
资本市场是指期限在()年以上的长期资金融通市场。
下列有关实质性程序的表述中,不恰当的是()。
软件维护工作越来越受到重视,因为它的花费常常要占软件生存周期全部花费的(28)%。其工作内容为(29)。为了减少维护工作的困难,可以考虑采取的措施是(30)。而软件的可维护性包含(31)。所谓维护管理主要指的是(32)等。
最新回复
(
0
)