用C++编写程序,输入一行字符(长度不确定),先把输入的字符串写到文本文件string.txt,然后从该文件中读出来,最后再统计其中的大写字母、小写字母和数字的个数并输出。
时间: 2024-02-20 12:58:47 浏览: 62
编写程序,要求统计任意字符串中数字字符,字母和其他字符的个数
4星 · 用户满意度95%
好的,这是一个比较完整的程序,包含了输入、输出、文件操作以及统计字符的过程。以下是代码:
```c++
#include <iostream>
#include <fstream>
#include <ctype.h>
using namespace std;
int main()
{
char str[1000];
cout << "请输入一行字符:" << endl;
cin.getline(str, 1000);
// 将字符串写入文件string.txt
ofstream fout("string.txt");
fout << str << endl;
fout.close();
// 从文件中读出字符串
ifstream fin("string.txt");
fin.getline(str, 1000);
fin.close();
// 统计大写字母、小写字母和数字的个数
int upper = 0, lower = 0, digit = 0;
for (int i = 0; str[i] != '\0'; i++) {
if (isupper(str[i])) {
upper++;
} else if (islower(str[i])) {
lower++;
} else if (isdigit(str[i])) {
digit++;
}
}
// 输出结果
cout << "大写字母个数:" << upper << endl;
cout << "小写字母个数:" << lower << endl;
cout << "数字个数:" << digit << endl;
return 0;
}
```
程序首先提示用户输入一行字符,然后将其写入文件string.txt中。接着从该文件中读出字符串,统计其中的大写字母、小写字母和数字的个数,并输出结果。注意,程序中使用了C++中的文件操作,包括ofstream和ifstream两个类,分别用于写入文件和读取文件。同时,使用了ctype.h头文件中的isupper、islower和isdigit三个函数,分别用于判断字符是否为大写字母、小写字母和数字。
阅读全文