c语言编制函数Strchr(char s[],char ch)用于返回字符串中从左边开始第一次出现字符ch的位置

请问一下,c语言编制函数Strchr(char s[],char ch)用于返回字符串中从左边开始第一次出现字符ch的位置
最新回答
二病晚期

2024-10-22 17:46:23

“位置”就是要找的字符在s中的下标。让Strchr返回一个int值,体中建立一个循环,找到ch后就把下标返回,整个s中没有找到ch则返回-1以示区别。举例代码如下:

//#include "stdafx.h"//If the vc++6.0, with this line.
#include "stdio.h"
int Strchr(char s[],char ch){
    int i;
    for(i=0;s[i];i++)//在s中查找ch
        if(s[i]==ch)
            return i;//找到就返回它的下标i
    return -1;//找不到返回-1
}
int main(void){
    char     str[]="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890",ch;
    printf("Enter a letter or Number...\nch=");
    scanf("%c%*c",&ch);
    printf("The subscript of %c is %d\n",ch, Strchr(str,ch));
    return 0;
}
一心只容一人

2024-10-22 12:39:53

#include<stdio.h>
int Strchr(char s[],char ch)
{
int i=0;
while(s[i])
if(s[i++]==ch)
return --i;
return -1;
}
int main(void)
{
char s[100],ch;
printf("输入一个字符串:\n");
gets(s);
printf("输入要查找的字符:");
scanf("%c",&ch);
printf("%d\n",Strchr(s,ch));
return 0;
}
参考文献:
http://zhidao.baidu.com/question/201910582.html