用字符数组存储从键盘输入一行字符(100个以内),用户输入整数i和n的值,编写算法输出该字符串中从第i个字符开始的n个字符。若i<1则认为i=1,若字符串剩余的字符不够n个则输出剩余的全部字符。
时间: 2024-05-05 10:19:22 浏览: 13
从键盘上输入一串英文字符(不含空格与其他字符),统计每个字符的数目,并输出字母及相应的数目。
好的,我明白了。下面是代码实现:
```
#include <stdio.h>
#include <string.h>
int main() {
char str[101]; // 字符数组,用于存储输入的字符串
int i, n;
// 从键盘读入一行字符
printf("请输入一行字符(100个以内):\n");
fgets(str, sizeof(str), stdin);
// 去掉字符末尾的换行符
str[strcspn(str, "\n")] = '\0';
// 读入整数i和n的值
printf("请输入i和n:\n");
scanf("%d%d", &i, &n);
// 如果i小于1,则认为i等于1
if (i < 1) {
i = 1;
}
// 输出从第i个字符开始的n个字符
printf("结果为:");
for (int j = i - 1; j < i - 1 + n && j < strlen(str); j++) {
putchar(str[j]);
}
putchar('\n');
return 0;
}
```
希望我的回答能够帮到您!
阅读全文