编程题求助!VC6.0一直提示CPP(18) : error C2143: syntax error : missing ',' before ')'是什么意思

#include<stdio.h>#defineMAX20intmain(){inti,j,n;chars[MAX+1];scanf("%d",&n);for(i=0;i... #include <stdio.h>
#define MAX 20
int main()
{
int i, j, n;
char s[MAX+1];
scanf("%d", &n);
for (i = 0; i < n; i++)
{
scanf("%s", s);
for (j = 0; s[j]; j++)
{
if (!((s[j] == '_')||(s[j] >= 'A' && s[j] <= 'Z')||(s[j] >= 'a' && s[j] <= 'z')||(s[j] >= '0' && s[j] <= '9' && j > 0)))
{
break;
}
}
printf(s[j]?"no\n","yes\n");
}
return 0;
}
展开
 我来答
jinjinhanyu
2012-12-19 · TA获得超过191个赞
知道答主
回答量:118
采纳率:0%
帮助的人:92.4万
展开全部
你的三目运算符写错了,原先的是printf(s[j]?"no\n","yes\n"); ,需要修改成printf(s[j]?"no\n":"yes\n");
具体参考:
<表达式1>?<表达式2>:<表达式3>; "?"运算符的含义是: 先求表达式1的值, 如果为真, 则执行表达式2,并返回表达式2的结果 ; 如果表达式1的值为假, 则执行表达式3 ,并返回表达式3的结果.
龙西村
2012-12-19
知道答主
回答量:17
采纳率:0%
帮助的人:17.8万
展开全部
小伙,你的三目运算符写错了.应该是printf(s[j]? "no\n":"yes\n");是冒号,不是逗号.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
思量的鱼
2012-12-19
知道答主
回答量:87
采纳率:0%
帮助的人:11.9万
展开全部
不清楚呢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Mis_丫
2012-12-19 · TA获得超过373个赞
知道小有建树答主
回答量:272
采纳率:100%
帮助的人:227万
展开全部
printf(s[j]?"no\n","yes\n");问题在这里

你想输出什么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式