练习7-10 查找指定字符 (15分)
题目描述
本题要求编写程序,从给定字符串中查找某指定的字符。
输入格式:
输入的第一行是一个待查找的字符。第二行是一个以回车结束的非空字符串(不超过80个字符)。
输出格式:
如果找到,在一行内按照格式“index = 下标”输出该字符在字符串中所对应的最大下标(下标从0开始);否则输出"Not Found"。
输入样例1:
m
programming
输出样例1:
index = 7
输入样例2:
a
1234
输出样例2:
Not Found
【注意】
要用 getchar( ) 吸收输入完字符后的换行符,不然gets( )接收到【换行符】直接结束
【答案】
#include <stdio.h>
#include <string.h>
#define MAX 1000
int main() {
char ch, str[MAX];
scanf("%c", &ch);
getchar(); // 吸收掉上面输入完,换行时的回车符,不然下面的gets()接收到回车符直接结束了
gets(str);
int cnt = 0, index, n = strlen(str);
for (int i = 0; i < n; i++) {
if (str[i] == ch) {
index = i;
} else {
cnt++;
}
}
if (cnt == n) {
printf("Not Found");
} else {
printf("index = %d", index);
}
return 0;
}