C语言实现有一长度不大于40的字符串,已知其中包含两个字符“A”,求处于这两个字符“A”中间的字符个数,并把这些字符依次打印出来。
时间: 2024-02-25 22:58:08 浏览: 70
好的,以下是 C 语言实现的代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char s[41]; // 存储输入的字符串
int a_index[2]; // 存储字符"A"的下标
int i, start_index, end_index;
printf("请输入一个长度不大于40的字符串:");
scanf("%s", s);
int len = strlen(s);
int count = 0;
for (i = 0; i < len; i++) {
if (s[i] == 'A') {
a_index[count++] = i;
}
}
if (count != 2) { // 判断"A"字符数量是否为2
printf("输入字符串中'A'的数量不为2!\n");
} else {
start_index = a_index[0] + 1; // 起始下标为第一个"A"的下标加1
end_index = a_index[1]; // 结束下标为第二个"A"的下标
printf("处于两个字符'A'中间的字符个数为:%d\n", end_index - start_index);
printf("这些字符依次为:");
for (i = start_index; i < end_index; i++) {
printf("%c", s[i]);
}
printf("\n");
}
return 0;
}
```
这段代码可以实现以下功能:
1. 提示用户输入一个长度不大于40的字符串。
2. 找到字符串中所有字符"A"的下标。
3. 判断字符"A"的数量是否为2,如果不是2则输出错误信息。
4. 如果字符"A"的数量为2,则计算出处于两个字符"A"中间的字符个数。
5. 打印出这些字符。