请编写程序,上机调试,题目如下图,请按题目要求编写,并给出程序
到底几个题?
第一题:
string s;
cin >> s;
CFile datFile;
CString datPath;
datPath = _T("D:\\1.dat");//在D盘下创建文件
if (!datFile.Open(datPath, CFile::modeCreate | CFile::modeReadWrite))
return;
datFile.Write(&s, sizeof(s));//写入文件
char* pc = new char[sizeof(s)];
datFile.Read(pc, sizeof(s));//读出数据
int cout = 0;//统计字符个数
for (int i = 0; i < sizeof(s); ++i)
{
if (islower(pc[i]))
{
pc[i]=toupper(pc[i]);
}
if (isupper(pc[i]))
{
pc[i]=tolower(pc[i]);
}
cout++;
}
CString endPath;
datPath = _T("D:\\2.dat");//在D盘下创建文件
CFile endFile;
if (!endFile.Open(endPath, CFile::modeCreate | CFile::modeReadWrite))
return;
endFile.Write(pc, sizeof(s));
delete[]pc;
datFile.Close();
endFile.Close();
第二题:
21
第一题
#include <iostream>
#include <fstream>
using namespace std;
fstream str;
int main()
{
/* Code */
string s;
cin>>s;
str.open("1.dat",ios::out);
str<<s;
for(int i=0 ;i<s.size(); i++)
{
if(s[i]>='a'&&s[i]<='z')
s[i]-=32;
if(s[i]>='A'&&s[i]<='Z')
s[i]+=32;
}
str.close();
str.open("2.dat",ios::out);
str<<s;
cout<<"字符个数 : "<<s.size()<<'\n';
return 0;
}
第二题:21
第三题:
#include <iostream>
#include <fstream>
using namespace std;
fstream str;
int main()
{
/* Code */
string s;
str.open("a.txt",ios::in);
while(str>>s)
{
int tar=0;
for(int i=0; i<s.size(); i++)
tar+=(s[i]-'A'+1);
cout<<s<<" 的百分比是 "<<tar<<endl;
}
return 0;
}