如何在不使用循环的情况下打印1到100之间的数字()

本文概述

  • C++
  • C
  • Java
  • Python3
  • C#
  • PHP
如果我们仔细看一下这个问题, 我们可以看到” 循环” 的想法是跟踪一些计数器值, 例如” i = 0″ 到” i < = 100″ 。因此, 如果不允许使用循环, 那么如何用C语言跟踪其他内容呢!
嗯, 一种可能性是使用” 递归” , 前提是我们仔细使用终止条件。这是使用递归打印数字的解决方案。
C++
//C++ program to How will you print // numbers from 1 to 100 without using loop? #include < iostream> using namespace std; class gfg {//Prints numbers from 1 to n public : void printNos(unsigned int n) { if (n> 0) { printNos(n - 1); cout < < n < < " " ; } return ; } }; //Driver code int main() { gfg g; g.printNos(100); return 0; }//This code is contributed by SoM15242

C
#include < stdio.h> //Prints numbers from 1 to n void printNos(unsigned int n) { if (n> 0) { printNos(n - 1); printf ( "%d " , n); } return ; }//Driver code int main() { printNos(100); getchar (); return 0; }

Java
import java.io.*; import java.util.*; import java.text.*; import java.math.*; import java.util.regex.*; class GFG { //Prints numbers from 1 to n static void printNos( int n) { if (n> 0 ) { printNos(n - 1 ); System.out.print(n + " " ); } return ; }//Driver Code public static void main(String[] args) { printNos( 100 ); } }//This code is contributed by Manish_100

Python3
# Python3 program to Print # numbers from 1 to n def printNos(n): if n> 0 : printNos(n - 1 ) print (n, end = ' ' )# Driver code printNos( 100 )# This code is contributed by Smitha Dinesh Semwal

C#
//C# code for print numbers from //1 to 100 without using loop using System; class GFG {//Prints numbers from 1 to n static void printNos( int n) { if (n> 0) { printNos(n - 1); Console.Write(n + " " ); } return ; }//Driver Code public static void Main() { printNos(100); } }//This code is contributed by Ajit

PHP
< ?php //PHP program print numbers //from 1 to 100 without //using loop//Prints numbers from 1 to n function printNos( $n ) { if ( $n> 0) { printNos( $n - 1); echo $n , " " ; } return ; }//Driver code printNos(100); //This code is contributed by vt_m ?>

【如何在不使用循环的情况下打印1到100之间的数字()】输出:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100

时间复杂度:O(n)
现在尝试编写一个执行相同操作但没有任何” if” 构造的程序。
提示—使用一些可以代替” if” 的运算符。
请注意, 递归技术很好, 但是每次调用该函数都会在程序堆栈中创建一个” 堆栈帧” 。因此, 如果内存有限, 我们需要打印大量数字, 那么” 递归” 可能不是一个好主意。那么另一种选择是什么呢?
另一种选择是” goto” 语句。尽管建议不要将” goto” 用作一般编程实践, 因为” goto” 语句会更改正常的程序执行顺序, 但在某些情况下, 使用” goto” 是最佳的解决方案。
因此, 请尝试使用” goto” 语句打印从1到100的数字。你可以使用GfG IDE!
在C++中打印1到100, 没有循环和递归

    推荐阅读