index函数c语言
❶ c语言指针题char *index(char *str,char ch)
1.char *index(char *str,char ch)
{char *p;
for(p=str;*p!='\0';p++)
if(*p==ch) break;
if(*p=='\0') p=0;
return (p);
}
❷ 会C语言的帮帮我
这题很简单的,关键是写的这个函数要干什么,需要什么数据,这些数据有什么用,我都给你标上了。
void index(char *a);
//对函数的说明,也可以把该函数以*.H存在include文件中,把主函数前面加一个#include "index.h"后面的index(char *a)就不用写在main()后面了,这就成了index.h调用。
main()
{char a[100];//开辟了一百个连续的存储空间,用于存放要输入的字符串,当然100可以改得更大。
index(a);//调用index函数。
}
void index(char *a)//函数说明
{int i,n=0,m=0;char b,s;定义初值b用来存放输入的字母。
printf("Enter Data with '\n' end : \n");
scanf("%c",&b);
while(b!='\n')通过while循环,将输入的字符一个一个的录入 到主函数开辟的连续空间中,以回车符表示输入 结束。
{*(a+n)=b;
m++;
scanf("%c",&b);
}
printf("Enter the word for check: \n");
scanf("%c",&s); 将要检验的字母输入到s中去;
for(i=0;i<n;i++) 用循环检验a[i]是否=s;
if(a[i]=s)
m++; a[i]=s成立m自加1,统计字母个数。
printf("%d",m);
}
}
❸ C语言中index怎么用
C语言index()函数作用:查找字符串并返回首次出现的位置。
相关函数:rindex, srechr, strrchr
头文件:#include <string.h>
定义函数:char * index(const char *s, int c);
函数说明:index()用来找出参数s 字符串中第一个出现的参数c 地址,然后将该字符出现的地址返回。字符串结束字符(NULL)也视为字符串一部分。
返回值:如果找到指定的字符则返回该字符所在地址,否则返回0。
参考示例如下:
#include<string.h>
main(){
char*s="";
char*p;
p=index(s,'5');
printf("%s ",p);
}
执行结果如下:
5.68E+25
❹ 请用C语言实现下面的函数: int index(char * src,char * dest)
C 实现:
#include <stdio.h>
void getNext(char pat[], int next[])
{
int j = 0;
int k = -1;
next[0] = -1;
while (pat[j])
{
if ( k == -1 || pat[j] == pat[k])
{
j++;
k++;
next[j] = k;
}
else
{
k = next[k];
}
}
}
int index(char str[], char dest[])
{
int i = 0;
int j = 0;
int next[255];
getNext(dest, next);
while (str[i])
{
if (dest[j] == '\0')
{
return (i - j+1);
}
if (str[i] == dest[j])
{
i++;
j++;
continue;
}
i += next[j+1]+1;
}
if (dest[j] == '\0')
{
return (i - j+1);
}
return 0;
}
❺ 编一个函数index,从一个字符串str中寻找一个字符ch第一次出现的位置
char *index(char *str,char ch)
{
char *p ;
for (p = str; *p != '\0'; p++)
{
if (*p == 'ch') { return p;}
}
else
return NULL;
}
❻ C语言函数编程
1.
#include<stdio.h>
#include<string.h>
void main()
{
char a[20][20],c;
int i,j,m=0;
for(i=0;i<20;i++)
for(j=0;j<20;j++)
a[i][j]='\0';
j = 0;
c=getchar();//先获取第一个字符
for(i=0;c!='\n';)
{
if(c != 32)
{
a[i][j] = c;
j++;//控制列存储
}
else
{
a[i][j] = '\0';//每一行的最后一个字符上字符串结束标志
i++;//控制行存储
j = 0;//重新开始一行了,所以列号要重新计数
}
c=getchar();
}
for(i=0;i<19;i++)
if(strlen(a[i])<strlen(a[i+1]))
m=i+1;
printf("%s\n",a[m]);
}
2.
#include<stdio.h>
void main()
{
int num[4][4],m,i,j;
printf("请输入数组:\n");
for(i=0;i<4;i++)
for(j=0;j<4;j++)
scanf("%d",&num[i][j]);
for(i=0;i<4;i++)
for(j=0;j<i;j++)
{
m=num[i][j];
num[i][j]=num[j][i];
num[j][i]=m;
}
printf("重排后的结果为:\n");
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
printf("%d ",num[i][j]);
printf("\n");
}
}
终于敲完了,累死我了,都是利用的数组以前的知识,看一看吧
❼ 求助C语言!!.编写一个函数strindex(s,t)它返回字符串t在s中最右边出现的位置
int strindex(char a[],char b [])
{
char *p=a,*q=b,*t;
int i=0,j=0,len=0;
while (*p!='\0')
{p++;i++;}
while (*q!='\0')
{q++;len++;}
p=a+i-len;//将p定位到最后一个长度为len的子串位置
while(p>=a)
{
t=p;
j=0;
q=b;
while(*t==*q)
{
if(++j>=len)
return (int)(p-a)+1;
t++;
q++;
}
}
return -1;
}
❽ C语言设计函数查找元素位置
根据题意可得如下代码:
#include<stdio.h>
#include<string.h>
structworkers
{
chartype[30];
intzj;
charname[30];
};
intfindWorkerByTZ(structworkersa[],intn,chartype[],intzj)
{
inti;
for(i=0;i<n;++i){
if(strcmp(a[i].type,type)==0&&a[i].zj==zj){
returni;
}
}
return-1;
}
intmain()
{
structworkersa[10]={{"teacher",4,"aa"},{"student",1,"bb"},{"teacher",5,"cc"}};
intn=3;
intindex=findWorkerByTZ(a,n,"teacher",4);
if(index==-1){
printf("notfound ");
}
else{
printf("founditat%d ",index);
}
return0;
}
❾ c语言 index函数 可以用于生成随即数组吗
能把这个函数具体的代码写出来不
❿ c语言函数定义的问题
用 #define 的叫 “宏”
“宏”是 正式编译前的一种 预处理 -- 字符串 替代。
例如:
#define GETUNSIGNED8(val,pos) ((val >> pos) & 0xFF)
把下面 程序中出现的 所有
GETUNSIGNED8(val,pos)
用 ((val >> pos) & 0xFF) 替代。
把GETUNSIGNED8(val,pos)里 val 位置上的字符串 替代 后面 的 ((val >> pos) & 0xFF) 里的 val
把GETUNSIGNED8(val,pos)里 pos 位置上的字符串 替代 后面 的 ((val >> pos) & 0xFF) 里的 pos
---
其它几行宏也 照此原则办理。