PTA 7-77 查找指定字符
题目描述:
本题要求编写程序,从给定字符串中查找某指定的字符。
输入格式:
输入的第一行是一个待查找的字符。第二行是一个以回车结束的非空字符串(不超过80个字符)。
输出格式:
如果找到,在一行内按照格式 “index = 下标” 输出该字符在字符串中所对应的最大下标(下标从0开始);否则输出 “Not Found” 。
输入样例1:
m
programming
输出样例1:
index = 7
输入样例2:
a
1234
输出样例2:
a
1234
思路:
从前往后读入,从后往前遍历。
代码如下:
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
char s[80];
int main()
{
char op;
cin >> op;
getchar(); //吞掉多余的回车
int i = 0;
//可能会有空格字符,需要依次读入,遇到回车结束读入
while ((s[i] = getchar()) != '\n')
i++;
s[i] = '\0'; //最后以‘\0’结束
i--;
int flag = 0; //标记
int idx;
for ( ; i >= 0; i--){ //从后往前查找
if (s[i] == op){
idx = i;
flag = 1;
break;
}
}
if (flag == 1)
printf("index = %d", idx);
else
cout << "Not Found" << endl;
return 0;
}