编写函数 int find_ char(const char* str, const char ch),返回ch 在str 中的位置(下标)。如果ch在 st 中不存在,那么返回-1。如果ch在str中出现多次,那么以第1次出现为准。使用指针进行编与 C语言
时间: 2024-03-21 21:43:29 浏览: 60
下面是代码实现:
```c
int find_char(const char* str, const char ch) {
int pos = 0;
while (*str != '\0') {
if (*str == ch) {
return pos;
}
str++;
pos++;
}
return -1;
}
```
函数接受两个参数,第一个参数是字符串指针,第二个参数是要查找的字符。函数使用指针遍历字符串,如果找到指定字符,则返回当前位置。如果整个字符串遍历完后仍然没有找到指定字符,则返回-1。
相关问题
编写函数int find _char (const char*str,const char ch),返回ch 在str中的位置(下标)。如果ch在str中不存在,那么返回-1。如果ch在str中出现多次,那么以第1次出现为准。用C语言和指针进行编写
可以参考下面的代码实现:
```c
int find_char(const char *str, const char ch) {
const char *p = str; // 指针p指向字符串str的首地址
int index = 0; // 下标从0开始计算
while (*p != '\0') { // 遍历整个字符串
if (*p == ch) { // 找到了ch字符
return index; // 返回下标
}
p++; // 指针向后移动一位
index++; // 下标加1
}
return -1; // 没有找到ch字符,返回-1
}
```
首先定义一个指针p,指向字符串str的首地址,并定义一个整型变量index,用于记录字符在字符串中的下标。然后使用while循环遍历整个字符串,判断每个字符是否等于ch字符,如果相等,则返回当前下标index。否则,指针p向后移动一位,下标index加1,继续遍历下一个字符。如果遍历完整个字符串都没有找到ch字符,则返回-1表示未找到。
编写C语言程序,编写函数int find_char(const char*str,const char ch),返回ch在str中的位置(下标)。如果ch在str中不存在,返回-1.如果ch在str中出现多次,那么以第一次出现为准。使用指针进行编写
好的,下面是实现代码:
```c
int find_char(const char* str, const char ch) {
int index = 0;
while (*str != '\0') { // 当str不为空时
if (*str == ch) { // 如果找到ch
return index;
}
str++; // 指针向后移动
index++; // 下标加1
}
return -1; // 如果未找到ch,返回-1
}
```
这个函数使用了指针的方式来遍历字符串,当找到字符ch时,返回当前的下标。如果遍历完整个字符串都没有找到ch,则返回-1。
阅读全文