C++ c++;计算字符数组中的数字数量?
我有一个字符数组,它的字符形式是数字0-8C++ c++;计算字符数组中的数字数量?,c++,char,C++,Char,我有一个字符数组,它的字符形式是数字0-8 Board[0] = '0'; Board[1] = '1'; Board[2] = '2'; Board[3] = '3'; Board[4] = '4'; Board[5] = '5'; Board[6] = '6'; Board[7] = '7'; Board[8] = '8'; 根据用户的输入,其中一些被更改为“x”或“o”,但我需要找出一种方法,以便我可以告诉它们的总数,它们不是“x”或“o” 我的意思是,如果说9个中的4个是“x”或“o”
Board[0] = '0';
Board[1] = '1';
Board[2] = '2';
Board[3] = '3';
Board[4] = '4';
Board[5] = '5';
Board[6] = '6';
Board[7] = '7';
Board[8] = '8';
根据用户的输入,其中一些被更改为“x”或“o”,但我需要找出一种方法,以便我可以告诉它们的总数,它们不是“x”或“o”
我的意思是,如果说9个中的4个是“x”或“o”,我需要能够得到剩下5个的事实。我试图对每个字符(电路板中的字符c)使用,
,我得到了足够的结果,列出了不是“x”或“o”的字符,但我不知道如何让它发送多少个剩余的字符到一个int值。这就是我所能做到的
for each(char c in Board)
{
if (c != 'x' && c != 'o')
{
}
}
您应该定义一个计数器来计算这些字符的数量(通过递增):
int n=0;
用于(字符c:电路板)
{
如果(c!=“x”&&c!=“o”)
{
n++;//将n增加1
}
}
std::cout您应该定义一个计数器来计算这些字符的数量(通过递增):
int n=0;
用于(字符c:电路板)
{
如果(c!=“x”&&c!=“o”)
{
n++;//将n增加1
}
}
你可以试试看
auto n = std::count_if(Board, Board+9, std::isdigit);
你可以试试
auto n = std::count_if(Board, Board+9, std::isdigit);
您可以使用和的组合
#包含//用于std::isdigit
#包括//用于标准::计数
int num=std::count_if(线路板,线路板+9,std::isdigit);
您可以使用和的组合
#包含//用于std::isdigit
#包括//用于标准::计数
int num=std::count_if(线路板,线路板+9,std::isdigit);
假设您不需要任何数字,而只需要0到8之间的数字,您可以这样做:
int count = 0;
for each(char c in Board)
{
if (c >= '0' && c <= '8')
{
count++;
}
}
cout << count << " are digits between 0 and 8 (inclusive)" << endl;
int count=0;
每个(电路板中的字符c)
{
如果(c>='0'&&c假设您不需要任何数字,并且只需要那些介于0和8之间的数字,您可以这样做:
int count = 0;
for each(char c in Board)
{
if (c >= '0' && c <= '8')
{
count++;
}
}
cout << count << " are digits between 0 and 8 (inclusive)" << endl;
int count=0;
每个(电路板中的字符c)
{
如果(c>='0'&&c,对于每个(…in…)不是C++。考虑我在C++中写的,它是有效的。是的,它不是标准C++。我使用VS编译器,这样即使你的编译器接受了这个语法,我也不建议提交它。你的导师希望你用你在这学期教过的语法。循环的语法。如果您提交了此非标准代码,并且您的指导老师没有使用相同的编译器,那么您可能会被扣分,因为您的指导老师将无法测试每个(…in…)的不是C++。考虑我在C++中写的,它是有效的。是的,它不是标准C++。我使用VS编译器,这样即使你的编译器接受了这个语法,我也不建议提交它。你的导师希望你用你在这学期教过的语法。循环的语法。如果您提交此非标准代码,并且您的指导老师没有使用相同的编译器,那么您可能会被扣分,因为您的指导老师将无法对其进行测试。另一种方法是从一个变量开始,该变量计算每个移动的可用空间数和减量。另一种方法是从计算每个移动的可用空格数和减量的变量。它不是是数字
,它是isdigit
@Astor似乎没有“9”;)更正了拼写错误,谢谢。它不是是数字
,它是isdigit
@Astor似乎没有“9”;)更正了拼写错误,谢谢。