我想问问能按顺序解释一下这个代码是什么意思吗,特别是a[z++]=b[n],这里

来源:6-4 数组作为函数参数

dzzzz

2018-11-05 22:09

#include <stdio.h>

int main()

{

  int a[200];

  int b[181];

  int z=0;

  int i,n;

  for(i=1000,n=1;i>=100,n<=181;i-=5,n++)

  {

       printf("b(%d)=%d\n",n,i);

  }

  b[n];

  a[z++]=b[n];

  return 0;

}


写回答 关注

1回答

  • 慕粉0247298809
    2018-11-06 17:19:57
    已采纳


    #include <stdio.h>


    int main()


    {


      int a[200];  // 定义一个整型数组a 长度200 


      int b[181];  // 定义一个整型数组b 长度181


      int z=0;     // 定义一个整型z 赋值0 


      int i,n;     // 定义两个整型  i和n 


      for(i=1000,n=1;i>=100,n<=181;i-=5,n++)

      // 循环(给i赋值1000,给n赋值1;

      //       如果i>=100或n<=181结束循环;

      //       每次循环i = i-5,n++) 

      //  大概是遍历 b[]数组中的每个值 ,遍历条件第次1000-5 

      {


           printf("b(%d)=%d\n",n,i);

    //      打印 bn=i; 

      }


     b[n];   //这一句没看懂啥意思,我注释掉也没啥影响;  

     a[z++]=b[n]; // 把 b数组第n位 赋值给 a数级 的 z++位。

     //这一句只跑了一次,当前应该 是a[1]=b[181]   ==  995 = 100;  

     //上边这句注释掉也没啥影响,不知道是不是程序没写完,后面可能会引用? 

     


      return 0;


    }


    慕粉0247... 回复dzzzz

    只有 a[z++]=b[n];这一句赋值了,之前只是遍历。 数组交换的话,在printf之前应该做一个这样的操作: 比如 int a=0,b=3,c;如果交换a和b. c = a ; a = b ; b = c ; 你这里定义的z可以做这个用

    2018-11-08 15:02:11

    共 2 条回复 >

C语言入门

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

926842 学习 · 20803 问题

查看课程

相似问题