某一个字符在字符串中第一次出现的位置是多少

某一个字符在字符串中第一次出现的位置是多少

方法一:用return 0;

#include<stdio.h>
int main()
{
	int n=0;
	scanf("%d",&n);
	getchar();
	char a[100005];
	for(int i=0;i<n;i++)
	{
		scanf("%c",&a[i]);
	}
	getchar();
	char c;
	scanf("%c",&c); 
	for(int i=0;i<n;i++)
	{
		if(a[i]==c)
		{
			printf("%d",i);
			return 0;
		}
	}
	printf("-1");
	return 0;
}
//问题:如何输入一个字符 查询他所在的位置 

方法二:break

#include<stdio.h>
#include<string.h>
int main()
{
	int n=0;
	scanf("%d",&n);
	getchar();
	char a[100005];
	for(int i=0;i<n;i++)
	{
		scanf("%c",&a[i]);//cin>>a[i]; 
	}
	getchar();
	char c;
	scanf("%c",&c); 
	int state=0; 
	for(int i=0;i<n;i++)
	{
		if(a[i]==c)
		{
			state=1;//标记已经找到了 
			printf("%d",i);//cout<<i
			break;//多组输入不能用break结束 因为直接跳出所有循环 
		}
	}
	if(state==0)
	{
		printf("-1");
	}
	return 0;
}


  

 

上一篇:递增三元组|2018年蓝桥杯B组题解析第六题


下一篇:洛谷 P3901 数列找不同 题解