gpt4 book ai didi

c - C 中的基本函数

转载 作者:太空宇宙 更新时间:2023-11-04 08:09:54 25 4
gpt4 key购买 nike

您好,我正在编写一个程序,它需要使用一个函数来遍历数组并挑选出具有大写字母 M 的索引号,然后返回该索引号,并且仅返回第一次出现的大写字母 M。如果未找到大写 M,则返回值 -1。这是我目前所拥有的(因为我是函数的新手,所以我可能会在左边的字段中出路)。

#include <stdio.h>

int findM (char string[], int numVals){
int i = 0;
int indexM;

for (i = 0; i < numVals; ++i){
if (string[i] == 'M'){
indexM = string[i];
break;
}
else {
indexM = -1;
}
}
return indexM;
}

int main(void) {
char userString [15] = "M as in Mancy";
printf("%d",findM(userString, 15));
return 0;
}

在这个例子中,预期的结果是 0,因为这个字符串的第一个元素是大写的 M,但是,我的编译和运行结果是 77。感谢您的帮助!

最佳答案

你得到这个是因为你在 indexM 变量中插入了 M 的 ASCI 值,但是你应该保存那个字符 M 的索引,对吧?所以在你的 findM 函数中像下面这样:

for (i = 0; i < numVals; ++i){
if (string[i] == 'M'){
indexM = i;
break;
}
else {
indexM = -1;
}
}
return indexM;
}

关于c - C 中的基本函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40211496/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com