for循环变量初始化

大家看我做错了吗#include<stdio.h>voidmain(){inti,j;for(i=1;i<=6;i++){putchar('\n');for(j=1;j<... 大家看我做错了吗
#include <stdio.h>

void main()
{
int i,j;
for(i=1;i<=6;i++)
{
putchar('\n');
for(j=1;j<=i;j++)
putchar('*');

}
}
和这个
#include <stdio.h>

void main()
{
int i=1,j=1;
for(;i<=6;i++)
{
putchar('\n');
for(;j<=i;j++)
putchar('*');

}
}
就变量声明位置不一样 得到结果完全不同 , 初学 ,谁来解释下
展开
 我来答
百度网友8541e4a
推荐于2018-04-05 · TA获得超过5331个赞
知道大有可为答主
回答量:4696
采纳率:0%
帮助的人:1609万
展开全部
第一种情况是这样,跳出j循环之后,i换了值,再进入j的for循环,j会刷新为j=1从新开始
第二情况j不会刷新,还是刚才运行完后的那个j,也就是2
第二次相当于:for(j=2;j<=i;j++)
这次完后j会一直保留值j=3
lufree92
2015-09-13 · TA获得超过109个赞
知道小有建树答主
回答量:182
采纳率:0%
帮助的人:114万
展开全部
结果肯定不一样啊,一个是每一次内循环都给j初始化1,第二个在一开始初始化1,以后的j一直累加=i,所以一直只会输出一个*就结束
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式