📜  用于在main()中调用main()的C / C++程序

📅  最后修改于: 2021-04-22 02:08:51             🧑  作者: Mango

给定数字N ,任务是编写C / C++程序以通过使用递归调用main()函数将数字从N打印到1。

例子:

方法:

  1. 使用静态变量初始化给定的数字N。
  2. 打印数字N并递减。
  3. 完成上述步骤后,重新调用main()函数。

下面是上述方法的实现:

C
// C program to illustrate calling
// main() function in main() itself
#include "stdio.h"
  
// Driver Code
int main()
{
  
    // Declare a static variable
    static int N = 10;
  
    // Condition for calling main()
    // recursively
    if (N > 0) {
        printf("%d ", N);
        N--;
        main();
    }
}


C++
// C++ program to illustrate calling
// main() function in main() itself
#include "iostream"
using namespace std;
  
// Driver Code
int main()
{
    // Declare a static variable
    static int N = 10;
  
    // Condition for calling main()
    // recursively untill N is 0
    if (N > 0) {
        cout << N << ' ';
        N--;
        main();
    }
}


输出:
10 9 8 7 6 5 4 3 2 1

时间复杂度: O(N) ,其中N是给定的数字。

想要从精选的最佳视频中学习并解决问题,请查看有关从基础到高级C++的C++基础课程以及有关语言和STL的C++ STL课程。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程”