C代码和运行结果如下:
输入5,成功输出了其在给定数组中的下标为4,结果正确,望采纳~
附源码:
#include <stdio.h>
int search(int a[], int n, int x) { // 返拆槐回旅肆友数组a[]中x的下标
int i
雹运 for (i = 0i <ni++) {
if (a[i] == x)
return i
}
return -1// 数组中没有x则返回-1
}
int main() {
int x, a[10] = {7,9,3,4,5,2,1,6,10,8}
scanf("%d", &x)// 用户输入数x
printf("%d ", search(a, 10, x))// 输出x在数组中的下标
return 0
}
实现代码如下:
#include <stdio.h>#include <stdlib.h>
int main()
{
char S[100],T[20]
char ch1,ch2
printf("请输入主字符串:\n")
ch1=getchar()
int i=0
while(ch1!='\n')
{
S[i]=ch1
i++
ch1=getchar()
}
printf("请输入要筛选的字符串:\n")
ch2=getchar()
int j=0
while(ch2!='\n')
{
T[j]=ch2
j++
ch2=getchar()
世顷答}
int m,n//m为S的下标,n为T的下标
搜慧 m=0
n=0
int num=0//num用于记录选定单词出现的次数
while(m<=i&&n<=j)
{
if(S[m]==T[n])
{
m++
n++
}
else
{
m=m-n+1
n=0
}
if(n==j)
{
乎键 num++
}
}
if(m==i+1)
{
printf("出现的次数是%d",num)
}
}
代码二:
int strstr_cnt(const char *string ,const char *substring){
int i,j,k,count=0
for(i=0string[i]i++)
for(j=i,k=0string[j]==substring[k]j++,k++)
if(!substring[k+1])
count++
return(count)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)