是在字符串中查找一个字符的代码,现在遇到的问题是根本没有接收输入的“要查找的字符”,直接就输出“未找到字符”了。
是在字符串中查找一个字符的代码,现在遇到的问题是根本没有接收输入的“要查找的字符”,直接就输出“未找到字符”了。也没有报错,getchar()、scanf两种接收字符的方式都试过了,没有用。
拜托各位大神帮忙看看,万分感激!
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 100
int main()
{
int i,j=-1,k;
int length;
char a[N],m;
for(k=0; k!=1; )
{
printf("请输入一串字符(以回车结束):\n");
scanf("%s",a);
length = strlen(a);
if(length == 0)
{
printf("对不起,您未输入字符!请重新输入!\n");
k = 0;
}
else k=1;
}
printf("请输入一个您要查找的字符:");
scanf("%c",&m);
for(i=0; i<length; i++)
{
if(a[i] == m)
{
j=i;
break;
}
}
if(j == -1)
{
printf("\n对不起,您要查找的字符不在该字符串中!\n");
}
else printf("已找到您要查找的字符%c!\n在字符串中首次出现的位置是%d\n",m,j+1);
return 0;
}