为了账号安全,请及时绑定邮箱和手机立即绑定

哪里有错了?

printf( money>=cost ? "y" : "n"                       );


哪里错了?

正在回答

4 回答

"y" : "n"  错了。应该是单引号,因为字符用单引号,字符串用双引号,

0 回复 有任何疑惑可以回复我~

单引号表示一个字符。双引号表示一个字符串,也就是结尾是'\0'的一串字符。

printf 函数的第一个参数要求是格式化字符串,类型为char *,所以必须传递一个字符串进去,即使你只想print一个字符。

而且最好如楼上说的那样使用printf。

0 回复 有任何疑惑可以回复我~

单引号?

0 回复 有任何疑惑可以回复我~
#1

kaithz 提问者

如果我换成单引号,会没有东西出来
2015-01-14 回复 有任何疑惑可以回复我~
#2

康振宁 回复 kaithz 提问者

你需要用格式化输出语句,如果是想用双引号的话,可以写printf("%s\n",money>=cost ? "y" : "n");如果你想用单引号的话,可以写printf("%c\n",money>=cost ? "y" : "n");
2015-01-14 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926025    人
  • 解答问题       20793    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

哪里有错了?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信