看到很多大型公司有这么一道笔试题:找出字符串中第一个只出现一次的字符  要求是不使用while、for循环

那么只有使用递归了:

#include<iostream>
#include <string>
using namespace std;

char my_print(char *str, int i, int j)
int main()
{
char *s = "chenxunsertyu";
char temp;
temp = my_print(s,0,0);
cout<<temp<<endl;
return 0;
}
char my_print(char *str, int i, int j)
{
int len = strlen(str);

if (i == j)
{
if(i == len - 1)
{
return str[i];
}
else
{
j++;
return my_print(str, i, j);
}

}

if (str[i] == str[j])
{
i++;
if (i == len)
{
cout<<"不存在只出现一次的字符"<<endl;
return -1;
}
else
{
j=0;
return my_print(str, i, j);
}
}
else
{
j++;
if (j == len)
{
return str[i];
}
else
{
my_print(str, i, j);
}
}

}