您的位置:首页 > 其它

练习2-2 在不使用运算符&&或者||的条件下编写一个与上面的for循环语句等价的循环语句。

2013-10-29 16:11 585 查看
/*for(i = 0; i < lim - 1 && ((c = getchar()) != '\n' && c != EOF; ++i)
s[i] = c*/

while(i < lim - 1)
{
while((c = getchar()) != EOF)
{
while((c = getchar() != '\n')
++i;
s[i] = c;
}
}


用while来做!

书上答案

enum loop {NO, YES};
enum loop okloop = YES;
i = 0;
while(okloop == YES)
if(i >= lim - 1)    /* outside of valid range ?*/
okloop = NO;
else if ((c = getchar()) == '\n')
okloop = NO;
else if(c == EOF)/*end of file ?*/
okloop = NO;
else{s[i] = c
++i
}


目测差不多!

还是我的答案不行?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐