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

为什么输出的*是无限个呀?

#include<stdio.h>

main()

{

int i,j;

for(i=1;i<=5;i++)

{

for(j=1;j<=4;j=2*j-1)

{

printf("*");

}

printf("\n");

}

return 0;

}


正在回答

4 回答

for(j=1;j<=4;j=2*j-1)有问题,不妨改成for(j=1,j<=5,j++),表明每次大循环中j的初始值为1,且j每次都循环5次(结果就是输出5个“*”),j++指是j循环中每循环一次j的值加1

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

第二个for循环中j的值始终为1进入了死循环,所以一直输出*

0 回复 有任何疑惑可以回复我~
for(j=1;j<=4;j=2*j-1)
{
printf("*");
}

j的值总是等于1 每过次循环 j的值又变回1

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

这是什么

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

举报

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

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

进入课程

为什么输出的*是无限个呀?

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