Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 不使用if语句对printf进行单函数调用?_C - Fatal编程技术网

C 不使用if语句对printf进行单函数调用?

C 不使用if语句对printf进行单函数调用?,c,C,我想调用printf,这样它就可以打印1个甜甜圈 如果int类型的donuts变量的值为1,否则为n,其中n是widget的值 如何在不使用任何if语句或任何其他语句的情况下对printf进行单个函数调用以实现这一点;代码必须是对printf的单个调用 如果禁用,请使用三元运算符:?:。你知道你在做什么吗?@HolyBlackCat确实为您提供了一个if解决方案,这是值得称赞的,但是在您的解释中,您说如果donuts变量。。。。除非你能找到一种合适的方式来解释你的情况,而不使用“如果”这样的术语

我想调用printf,这样它就可以打印1个甜甜圈 如果int类型的donuts变量的值为1,否则为n,其中n是widget的值

如何在不使用任何if语句或任何其他语句的情况下对printf进行单个函数调用以实现这一点;代码必须是对printf的单个调用


如果禁用,请使用三元运算符:?:。你知道你在做什么吗?@HolyBlackCat确实为您提供了一个if解决方案,这是值得称赞的,但是在您的解释中,您说如果donuts变量。。。。除非你能找到一种合适的方式来解释你的情况,而不使用“如果”这样的术语,否则你可能找不到能满足你需要的代码,就好像它已经在这里了一样。虽然这段代码可能会解决这个问题,但如何以及为什么解决这个问题会真正有助于提高你的帖子质量,而且可能会得到更多的支持票。请记住,你是在将来回答读者的问题,而不仅仅是现在提问的人。请在回答中添加解释,并说明适用的限制和假设。
 printf(" %d %s\n", donuts == 1 ? donuts : widgets, donuts == 1 ? "donuts" : "widgets");