从键盘输入一个字符串(注意:字符串中含有空格),使用字符数组型和字符型指针来实现程序的功能,统计且输出字符串中字母的个数。要求用C++实现,且头文件使用iostream
时间: 2024-01-24 15:17:44 浏览: 76
从键盘输入一串字符,分别统计其中的字母,数字字符和其他[文].pdf
以下是使用字符数组型实现的代码:
```cpp
#include <iostream>
using namespace std;
int main() {
char str[100];
int count = 0;
cout << "请输入一个字符串:";
cin.getline(str, 100); // 使用cin.getline()函数读取带空格的字符串
for (int i = 0; str[i] != '\0'; ++i) { // 以'\0'作为字符串结束标志
if ((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z')) { // 判断是否为字母
++count;
}
}
cout << "字符串中字母的个数为:" << count << endl;
return 0;
}
```
以下是使用字符型指针实现的代码:
```cpp
#include <iostream>
using namespace std;
int main() {
char* str = new char[100];
int count = 0;
cout << "请输入一个字符串:";
cin.getline(str, 100);
for (int i = 0; *(str + i) != '\0'; ++i) {
if ((*(str + i) >= 'a' && *(str + i) <= 'z') || (*(str + i) >= 'A' && *(str + i) <= 'Z')) {
++count;
}
}
cout << "字符串中字母的个数为:" << count << endl;
delete[] str; // 释放动态分配的内存
return 0;
}
```
两份代码的功能是相同的,都是统计并输出输入字符串中字母的个数。使用字符数组型的代码在定义时需要指定数组大小,而使用字符型指针则需要动态分配内存。在字符串读取时,字符数组型使用的是cin.getline()函数,而字符型指针使用的是同名的函数,只不过需要将指针作为参数传入。
阅读全文