急求!!!C语言编程。编写一个函数在字符数组中查找指定字符

急求!!!
编写一个函数,功能是在字符数组中查找指定字符,若数组中含有该字符,则返回该字符在数组中第一次出现的位置,否则返回-1.函数名:find.
在线等。

第1个回答  推荐于2016-09-27
#include<stdio.h>

int find(char ch[], char data);
void main()
{
char ch[100];
char data;

printf("input ch[]:");
gets(ch);

printf("input data:");
data = getchar();

printf("%d\n", find(ch, data));

}
int find(char ch[], char data)
{
int i;

for (i = 0; ch[i] != '\n'; i++)
{
if (data == ch[i])
{
return (i);
}
}

return (-1);
}本回答被提问者采纳
第2个回答  2010-04-24
int find( char *words , int length , char word){
//*words用来存放数组的首地址,word 为要查找的字符,length为数组长度

int flag = -1, index = 0; //index为数组的下标,flag 为标志

for(index = 0; index < length; index++){
if(words[index] != word){
}else{ //可以节约判断的次数,减小时空复杂度
flag = index;
break;
}
}
return flag;
}
第3个回答  2010-04-24
int find(char *a,char b)
{
for(int i=1;*a!='\0';a++,i++)
if(*a==b)
return i;
return -1;
}
第4个回答  2010-04-24
那个2级的写的有点错,应该是return(i+1)
第5个回答  2010-04-24
int find(char *s, int length, char tobefound){
int i, j;
j = -1;
for(i = 0; i < length; ++i){
if(s[i] == tobefound){
j = i;
break;
}
}
return j;
}

在C语言中,要求编写程序在给定的字符串中查找指定的字符。
int main(){ int i,index,count;char a,ch,str[80];scanf("%c\\n",&a);i=0;index=-1;count=0;ch=getchar();for(i=0;ch!='\\n';i++){ str=ch;count++;ch=getchar();} for(i=0;i<count;i++)if(a==str)index=i;if(index!=-1)printf("index=%d",index);else printf...

...将其存放在字符数组中,再输入一个指定字符,在字符数组中查找...
printf("请输入一个指定字符:");ch = getchar(); \/\/ 读入一个字符 int i;for (i = 0; i < strlen(str); i++) { \/\/ 遍历字符数组 if (str[i] == ch) { \/\/ 如果找到了指定字符 printf("指定字符在字符数组中第一次出现的位置:%d\\n", i); \/\/ 输出下标 return 0; \/\/ ...

C语言 用字符数组编程实现找出字符串中最大的那个字符元素,并输出该...
C语言程序:include <stdio.h>#include <string.h>#define MAX 80void main(){char arr[MAX + 1];char max;int len;int i;printf("Input a string:\\n");gets(arr);max = '\\0';len = strlen(arr);for(i=0; i<len; i++){if(arr[i] > max){max = arr[i];}}printf("The...

c语言编程【编写一个 C 函数,在一个字符串中找到可能的最长的子字符串...
这个函数根本就不对,因为数组不能自己动态增长。第三,你在程序中已经限定了数组的长度是100,那么最好就直接使用x[100]。字符串是以'\\0'结尾的,所以,只要读到'\\0'就认为字符串结束。所以不需要动态数组。

C语言编程:从键盘输入一个字符串,查找指定子串第一次出现的位置。求问题...
flag;\/\/输入一串字符printf("Input a string:");gets(s);\/\/输入想要查找的字符printf("Input another string:");gets(d);\/\/调用函数,输出结果flag=SearchString(s,d);if(flag==-1)printf("Not found!\\n");elseprintf("Searching results:%d\\n",flag);system("pause");...

C语言编程:写一个函数,输入一行字符,将此字符串中最长的单词输出.
include <stdio.h> void main(){ int a,b,c;printf("请输入3个整数:");scanf("%d%d%d",&a,&b,&c);if((a>b)&& (a<c)|| (ac))printf("\\n d 为位于中间的数\\n",a);if((b>a)&& (b<c)|| (bc))printf("\\n d 为位于中间的数\\n",b);if((c>b)&& (c<a)|| ...

跪求!一C语言答案!急需!输入一个一维整型数组,并找出数组元素中最大值...
要求:(1)字符串采用初始化的方式处理。(2)通过scanf函数读入一个任意字符。(3)在字符串中查找该字符,如果存在该字符,输出该字符在字符串中的位置以及相应的说明。如果不存在该字符,则要给出相应的信息。3.编程实现:首先任意输入一个大于2且小于10的整数n,再输入一个由n决定的二维整型数组...

C语言编程题目 给一个字符串,请找出出现次数最多的大写英文字母。
#include<stdio.h> #include<string.h> void main(){ chara[100];intfre[26];int i,len,big=0;gets(a);for(i=0;i<26;i++)fre[i]=0;len=strlen(a);for(i=0;i<len;i++)if(a[i]>='a'&&a[i]<='z')fre[a[i]-'a...

用c语言编程实现从一个数中选出某一位上的数字
include<stdio.h>#include<string.h>#include<stdlib.h>void main(){int n,m;char numstring[20];printf("请输入数值,以及目标位:\\n");scanf("%d%d",&n,&m);itoa(n,numstring,10);printf("%d的第%d位数字是%c\\n",n,m,numstring[strlen(numstring-m)]);} ...

C语言编程:编写函数,统计字符串中字母、数字、空格和其他字符的个数...
include<stdio.h> void TongJi(char s[]){ int ZiMu=0,KongGe=0,ShuZi=0,QiTa=0,i;for(i=0;s!='\\0';i++){ if(s==32)KongGe++;else if((s>=48)&&(s<=57))ShuZi++;else if(((s>=97)&&(s<=122))||((s>=65)&&(s<=90)))ZiMu++;else QiTa++;} printf("空格:...

相似回答