题干:
本题要求编写程序,从给定字符串中查找某指定的字符。
输入格式:
输入的第一行是一个待查找的字符。第二行是一个以回车结束的非空字符串(不超过80个字符)。
输出格式:
如果找到,在一行内按照格式“index = 下标”输出该字符在字符串中所对应的最大下标(下标从0开始);否则输出"Not Found"。
输入样例1:
m
programming
输出样例1:
index = 7
输入样例2:
a
1234
输出样例2:
Not Found
题解:
本题要实现一个从右往左查找字符的程序。
首先对待查找字符和字符串进行输入。
从右往左遍历数组,当找到该字符时即可退出循环。
之后做一个判断,当i!=-1时,代表循环没有进行完全便遇到break而退出了,即找到了字符,则输出下标i。
反之,i==-1 则代表没找到对应的字符,输出"Not Found"
代码如下:
#include <stdio.h>
int main()
{
char c;
scanf("%c\n",&c);
char a[80];
int n=0,i;
scanf("%c",&a[0]);
while(a[n]!='\n'){
n++;
scanf("%c",&a[n]);
}
for(i=n-1;i>=0;i--){
if(a[i]==c){
break;
}
}
if(i!=-1){
printf("index = %d",i);
}
else printf("Not Found");
return 0;
}