用c++编写函数int findchar achar c从一个字符串中找出某个字符第一次出现的位置例如字符串Computer Language中字母u第1次出现的位置为5。若没有该字符返回0;否则函数返回出现的位置。要求:1在主函数中输入字符串和要查找的字符。 2在主函数中输出查找结果。 3测试结果应该能够反映如下几种情况:没有出现、出现在第一个位置、出现在最后一个位置、出现在其他
以下是一种可能的实现:
#include <iostream>
using namespace std;
int find(char a[], char c) {
int i = 0;
while (a[i] != '\0') {
if (a[i] == c) {
return i+1; // 返回位置,从1开始计数
}
i++;
}
return 0; // 没有找到
}
int main() {
char str[100], c;
cout << "请输入字符串:" << endl;
cin.getline(str, 100);
cout << "请输入要查找的字符:" << endl;
cin >> c;
int pos = find(str, c);
if (pos == 0) {
cout << "没有找到该字符。" << endl;
} else {
cout << "该字符第一次出现的位置为:" << pos << endl;
}
return 0;
}
在主函数中,先输入字符串和要查找的字符,然后调用find函数进行查找,最后根据返回值输出结果。注意字符串是用cin.getline输入的,这样可以输入包含空格的字符串。
原文地址: https://www.cveoy.top/t/topic/bWcz 著作权归作者所有。请勿转载和采集!