本文目录一览:
- 1、C语言查找,要代码
- 2、C语言 字符串查找(要代码)
- 3、求c语言大神 题目:编写查找函数search(),实现如下功能。
- 4、c语言中查找的代码怎么写
- 5、c语言搜索代码
- 6、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}