应用字符数组存储从键盘输入一行字符(100个以内),用户输入整数i和n的值,编写算法输出该字符串中从第i个字符开始的n个字符。 提示:若i<1则认为i=1,若字符串剩余的字符不够n个则输出剩余的全部字符。
时间: 2023-07-15 20:14:28 浏览: 210
从键盘上输入一串英文字符(不含空格与其他字符),统计每个字符的数目,并输出字母及相应的数目。
下面是C++语言实现的代码:
```
#include <iostream>
using namespace std;
int main()
{
char str[101];
int i, n;
cout << "请输入一行字符(100个以内):" << endl;
cin.getline(str, 101);
cout << "请输入i和n的值:" << endl;
cin >> i >> n;
if (i < 1) i = 1;
int len = strlen(str);
if (i + n - 1 > len) n = len - i + 1;
cout << "从第" << i << "个字符开始的" << n << "个字符为:";
for (int j = i - 1; j < i + n - 1; j++)
cout << str[j];
cout << endl;
return 0;
}
```
代码中,我们首先定义了一个字符数组 `str`,用来存储从键盘输入的一行字符。然后,我们输入整数 `i` 和 `n` 的值,如果 `i` 小于 1,则将其置为 1。接着,我们计算出字符串的长度 `len`,如果从第 `i` 个字符开始的 `n` 个字符超过了字符串的长度,则将 `n` 置为剩余的字符数。最后,我们使用一个循环输出从第 `i` 个字符开始的 `n` 个字符。
阅读全文