小编Yu_*_*ain的帖子

C语言:递归函数中x + 1和x ++之间的区别?

我的老师要求编写一个程序,使用递归函数打印每个数组元素的功能.

我的代码:

#include <stdio.h>
#include <conio.h>

void pow(int a[10],int i);

main()
{
    int a[10],i,c=0;
   printf("Enter 10 numbers:\n");
   for(i=0;i<10;i++)
    scanf("%d",&a[i]);
   printf("Power of elements in array:\n");
   pow(a,c);
   getch();
}

void pow(int a[10],int i)
{
    if(i!=10)
   {
    printf("%d\n",a[i]*a[i]);
      pow(a,i+1);
   }
}
Run Code Online (Sandbox Code Playgroud)

到目前为止,我没有遇到任何问题.但是,当我将第三行最后一行 pow(a,i+1)更改 pow(a,i++) 为输出时,无数个.

任何人都可以解释一下为什么它最终会像这样?当我将i + 1改为i ++时究竟发生了什么?

先感谢您!

c recursion

1
推荐指数
1
解决办法
239
查看次数

标签 统计

c ×1

recursion ×1