用C语言输入一个以回车结束的字符串(少于 80 个字符),再输入一个字符,在字符串中查找该 字符。如果找到,则输出该字符在字符串中所行对应的最大下标(下标从0开始);否则输出“Not found ”。
时间: 2023-06-16 08:05:11 浏览: 1024
入一个字符,再输入一个以回车结束的字符串(少于80个字符)在字符串中查找该字符。.cpp
下面是一个实现该功能的 C 语言程序:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[80], ch;
int i, len, index = -1;
printf("请输入一个字符串:");
fgets(str, 80, stdin);
len = strlen(str);
printf("请输入一个字符:");
scanf("%c", &ch);
for (i = 0; i < len; i++) {
if (str[i] == ch) {
index = i;
}
}
if (index == -1) {
printf("Not found\n");
} else {
printf("字符 %c 在字符串中最后出现的位置是:%d\n", ch, index);
}
return 0;
}
```
首先,我们声明了一个字符数组 `str` 和一个字符 `ch`,分别用来存储输入的字符串和要查找的字符。
然后,我们使用 `fgets` 函数从标准输入中读取一个字符串,最多读取 80 个字符。注意,`fgets` 函数会在读取到换行符(即回车)时停止,并将换行符也存储在字符串中。
接下来,我们使用 `scanf` 函数从标准输入中读取一个字符。
然后,我们使用一个循环遍历字符串中的每个字符,如果找到了要查找的字符,就记录下它在字符串中的下标。
最后,根据记录的下标判断是否找到了要查找的字符,并输出相应的结果。如果没有找到,就输出 “Not found”。如果找到了,就输出该字符在字符串中最大的下标。注意,我们初始化 `index` 为 -1,如果循环结束后 `index` 的值仍然是 -1,说明没有找到要查找的字符。
阅读全文