编写C语言程序,编写函数int find_char(const char*str,const char ch),返回ch在str中的位置(下标)。如果ch在str中不存在,返回-1.如果ch在str中出现多次,那么以第一次出现为准。使用指针进行编写
时间: 2024-03-14 09:47:39 浏览: 43
好的,下面是实现代码:
```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。
相关问题
编写c语言函数int find_char(const char*str,const char ch),返回ch在str中的位置(下标)。如果ch在str中不存在,那么返回-1。如果ch在str中出现多次,那么以第1次出现为准。使用指针进行编写)
以下是实现函数 `find_char` 的代码:
```c
int find_char(const char* str, const char ch) {
int index = 0;
while (*str != '\0') {
if (*str == ch) {
return index;
}
str++;
index++;
}
return -1;
}
```
该函数的参数为一个字符指针 `str` 和一个字符 `ch`。函数使用指针遍历字符串 `str`,如果找到字符 `ch`,则返回其下标;如果遍历完整个字符串仍未找到,则返回 -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表示未找到。
阅读全文