鱼C论坛

 找回密码
 立即注册
查看: 1392|回复: 4

[已解决]关于for循环的初始化

[复制链接]
发表于 2020-3-18 11:35:04 | 显示全部楼层 |阅读模式
5鱼币
  1. #include<stdio.h>
  2. int main()
  3. {
  4.         int i=1,j=1;
  5.         for(;i<=5;i++){
  6.                 for(;j<=i;j++){
  7.                         printf("*");
  8.                 }
  9.                 printf("\n");
  10.         }
  11.         return 0;
  12. }
复制代码

  1. {
  2.         int i,j;
  3.         for(i=1;i<=5;i++){
  4.                 for(j=1;j<=i;j++){
  5.                         printf("*");
  6.                 }
  7.                 printf("\n");
  8.         }
  9.         return 0;
  10. }
复制代码

这两段代码有啥不一样嘛?感觉就是初始化的位置不同啊,可是打印出来是结果一个是只有一列,一个是三角形啊,问题出在哪里啊?
帮帮忙啊各位大佬_(:з」∠)_(编译器Devcpp)
最佳答案
2020-3-18 11:35:05
  1. #include<stdio.h>
  2. int main()
  3. {
  4.         int i=1,j=1;
  5.         for(;i<=5;i++){
  6.                 for(;j<=i;j++){//在这里,j的值在执行完后都会自增1
  7.                         printf("*");
  8.                 }
  9.                 printf("\n");
  10.         }
  11.         return 0;
  12. }
复制代码

  1. {
  2.         int i,j;
  3.         for(i=1;i<=5;i++){
  4.                 for(j=1;j<=i;j++){//在这里,j的值每一次都变为1,自增几乎没有作用
  5.                         printf("*");
  6.                 }
  7.                 printf("\n");
  8.         }
  9.         return 0;
  10. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-3-18 11:35:05 | 显示全部楼层    本楼为最佳答案   
  1. #include<stdio.h>
  2. int main()
  3. {
  4.         int i=1,j=1;
  5.         for(;i<=5;i++){
  6.                 for(;j<=i;j++){//在这里,j的值在执行完后都会自增1
  7.                         printf("*");
  8.                 }
  9.                 printf("\n");
  10.         }
  11.         return 0;
  12. }
复制代码

  1. {
  2.         int i,j;
  3.         for(i=1;i<=5;i++){
  4.                 for(j=1;j<=i;j++){//在这里,j的值每一次都变为1,自增几乎没有作用
  5.                         printf("*");
  6.                 }
  7.                 printf("\n");
  8.         }
  9.         return 0;
  10. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-3-18 11:48:23 | 显示全部楼层
  1. 调试一下,就知道了,第二个代码,执行第二次循环,j初始都为1,
  2. 而第一个,第二次循环,j为上一次的j
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-3-18 13:07:46 | 显示全部楼层
第一个代码中的i和j不是局部变量,第二个中的i和j是局部变量
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-3-18 17:22:19 | 显示全部楼层
J并没有自增
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-12 11:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表