c语言简单题

[复制链接]
查看11 | 回复4 | 2011-3-16 19:17:22 | 显示全部楼层 |阅读模式
#include "stdio.h"
void main()
{
int i;
for(i=1;i');
}
putchar('^');

}
问:输出结果是^, 为什么不是^?
i循环5次,i=1,2,3,4,5,遇到continue跳出循环,执行下次循环...
然后...

回复

使用道具 举报

千问 | 2011-3-16 19:17:22 | 显示全部楼层
{ if(i%2) putchar('');}// continue; putchar('>');//这个地方要看懂,它俩两侧没有括号所以i=1,3,5时执行的是 putchar('');两个语句于是输出了三个而遇到2,4时执行continue,跳出本轮循环,即不执行putchar('>');当i>5时跳出for循环执行putchar('^');所以输出结果为^解答完毕不会再问我
回复

使用道具 举报

千问 | 2011-3-16 19:17:22 | 显示全部楼层
因为continue的作用是跳过本次循环 继续下次循环,或者说continue在C中是让继续执行循环的作用,如果没有continue的话运行结果应该是 ,
回复

使用道具 举报

千问 | 2011-3-16 19:17:22 | 显示全部楼层
它是 if(i%2)而不是if(i%2)==0,如果是后者的话就是你想的那个结果!是i=3,4,5三次运行再加上^就是^记得采纳给分!
回复

使用道具 举报

千问 | 2011-3-16 19:17:22 | 显示全部楼层
当i=1,if(i%2)是真,这样执行putchar('');屏幕输出当i=2,if(i%2)是假,这样执行conitnue;直接执行for语句的i++,i=3当i=3,if(i%2)是真,这样执行putchar('');屏幕输出当i=4,if(i%2)是假,这样执行
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行