根据变量的值更改printf()中的文本

马特拉

我已经很长时间没有做C了,然后慢慢地回到它里面。我做了一个小游戏,现在经历“错误修复”,并在这里和那里进行奇怪的调整。我有一个问题,如果printf()关于转弯声明中的文字...

printf("CONGRATULATIONS!!\nYou won with %d turns remaining\n",turns);

现在很好直到turns==1

有没有一种有效的方法可以根据转弯变量的条件来更改文本“转弯”?还是我必须使用if语句(我已经有一个解决方案,但是我敢肯定有更好的解决方案!)

if (turns==1)
{
  printf("CONGRATULATIONS!!\nYou won with %d turn remaining\n",turns);
}
else
{
  printf("CONGRATULATIONS!!\nYou won with %d turns remaining\n",turns);
}

很抱歉出现了真正的“菜鸟”问题,但我无法确定这样做最有效的方法。

ALK

使用条件运算符可能会满足您的需求

printf("CONGRATULATIONS!!\nYou won with %d turn%s remaining.\n", 
  turns, 
  turns==1 ?"" :"s");

或只是做

printf("CONGRATULATIONS!!\nYou won with %d turn(s) remaining.\n",
  turns);

;-)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章