您的位置:

c语言代码搜索,c语言查找代码

本文目录一览:

C语言查找,要代码

代码如下,时间复杂度就需要你自己了

#include stdio.h

int main()

{

char str[100];

int cnt[26] = {0};

int i,j;

int max;

gets(str);

for(i = 0; str[i]; i ++)

{

if(str[i] = 'A'  str[i] = 'Z')

{

str[i] += 'a'-'A';

}

if(str[i] = 'a'  str[i] = 'z')

{

cnt[str[i] - 'a'] ++;

}

}

max = 0;

printf("出现次数统计:\n");

for(i = 0; i  26; i ++)

{

if(cnt[i]  0)

{

printf("%c:%d\n", i+'a', cnt[i]);

if(cnt[i]  cnt[max]) max = i;

}

}

printf("没出现的字母有:\n");

for(i = 0; i  26; i ++)

{

if(cnt[i] == 0)

{

printf("%c\n", i+'a');

}

}

max+='a';

printf("出现次数最多的字母是%c\n", max);

for(i = j = 0; str[i]; i ++)

{

if(str[i] == max) continue;

str[j++] = str[i];

}

str[j] = 0;

printf("删除出现最多字母%c后的字符串为:%s\n", max, str);

return 0;

}

C语言 字符串查找(要代码)

用strstr这个函数

包含文件:string.h

函数名: strstr

函数原型:extern char *strstr(char *str1, char *str2);

功能:找出str2字符串在str1字符串中第一次出现的位置(不包括str2的串结束符)。

返回值:返回该位置的指针,如找不到,返回空指针。

源代码:

#includestdio.h

#includestring.h//调用string.h中的strstr函数

void main(){

char ch1[255]="abcde";

char ch2[100]="cd";

char* ch;//用于接受返回值

if((ch=strstr(ch1,ch2))==NULL){//说明没有要找的字符串

printf("-1\n");

}else{//说明找到了那个字符串

printf("%d\n",ch-ch1+1);//cde的地址减去abcde的地址+1

}

}

求c语言大神 题目:编写查找函数search(),实现如下功能。

C代码和运行结果如下:

输入5,成功输出了其在给定数组中的下标为4,结果正确,望采纳~

附源码:

#include stdio.h

int search(int a[], int n, int x) { // 返回数组a[]中x的下标

    int i;

    for (i = 0; i n; i++) {

        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;

}

c语言中查找的代码怎么写

你要查找什么,这是一段二维的查找代码.

#includestdio.h

void main()

{

int a[10][5];

int i,j;

int tmp;

for(i=0;i10;i++)

{

printf("请输入第%d个学生的成绩:\n",i+1);

for(j=0;j5;j++)

scanf("%d",a[i][j]);

}

printf("请输入学生编号(由1到10):\n");

scanf("%d",tmp);

printf("第%d个学生的成绩是:\n",tmp);

for(i=0;i5;i++)

printf("%d ",a[tmp-1][i]);

printf("\n");

}

c语言搜索代码

/*宽度优先搜索*/

#define Adj 1

#define Unadi 0

#define N 6

typedef struct

{int Number[N];

int front;

int rear;

}Queue,*pQueue;

void InitQueue(pQueue q)

{q-front=0;

q-rear=0;

}

void EnQueue(pQueue q,int number)

{int rear;

rear=(q-rear+1)%N;

if(rear==q-front)

{printf("The Queue is full,cannot enter the queue.");

}

else

{q-Number[q-rear]=number;

q-rear=rear;

}

}

int OutQueue(pQueue q)

{int number;

if(q-front==q-rear)

{printf("The Queue is empty.");

return -1;

}

number=q-Number[q-front];

q-front=(q-front+1)%N;

return number;

}

int Isempty(pQueue q)

{if(q-front==q-rear)return 1;

else return 0;

}

void BFSTraverse(int v,int (*a)[6],int *dist,int *prev)

{Queue q;

int number,i;

int s[N];

InitQueue(q);

for(i=1;iN;i++)

s[i]=0;

s[v]=1;

prev[v]=v;

dist[v]=0;

EnQueue(q,v);

while(!Isempty(q))

{ number=OutQueue(q);

for(i=1;iN;i++)

{if(!s[i]a[number][i]==Adj)

{dist[i]=dist[number]+1;

prev[i]=number;

s[i]=1;

EnQueue(q,i);

}

}

}

}

main()

{int a[N][N];

int v,dist[N],prev[N],i,j,k;

printf("please input the relation of points:");

for(i=1;iN;i++)

for(j=1;jN;j++)

scanf("%d",a[i][j]);

printf("Please input the number of initial point:");

scanf("%d",v);

BFSTraverse(v,a,dist,prev);

for(i=1;iN;i++)

{printf("The %d number point's distant is:%d\n",i,dist[i]);

k=i;

while(k!=v)

{printf("%d--",k);

k=prev[k];

}

printf("%d\n",v);

}

}

宽度优先搜索需借助队列的帮助

2.深度优先搜索没时间在再写,抱歉

C语言中如何查找字符串?

用strstr这个函数\r\n\r\n包含文件:string.h\r\n函数名: strstr \r\n函数原型:extern char *strstr(char *str1, char *str2);\r\n功能:找出str2字符串在str1字符串中第一次出现的位置(不包括str2的串结束符)。\r\n返回值:返回该位置的指针,如找不到,返回空指针。\r\n\r\n源代码:\r\n\r\n#include\r\n#include//调用string.h中的strstr函数\r\nvoid main(){\r\n char ch1[255]="abcde";\r\n char ch2[100]="cd";\r\n char* ch;//用于接受返回值\r\n if((ch=strstr(ch1,ch2))==NULL){//说明没有要找的字符串\r\n printf("-1\n");\r\n }else{//说明找到了那个字符串\r\n printf("%d\n",ch-ch1+1);//cde的地址减去abcde的地址+1\r\n } \r\n}