zoukankan      html  css  js  c++  java
  • zzuli oj 1111 多个整数的逆序输出

    题意描述:

    输入n和n个整数,以与输入顺序相反的顺序输出这n个整数。要求不使用数组,而使用递归函数实现。
    递归函数实现过程如下:
    void inverse(int n)
    {
        if(n >1)
       {
            (1) 读入一个整数,存入num;
            (2)  将后面的n-1个数逆序输出: inverse(n-1);  
            (3)  输出num;
       }
     if( n == 1)  直接输出num;
    }

    解题思路:

    先输入一个整数n,编写递归函数,分为n=1或n>1两种情况:如果大于1,先读入一个整数存入num,然后再利用递归函数读入n-1个数,最后n=1时直接将读入的整数输出。

    代码实现:

     1 #include<stdio.h>
     2 void inverse(int n)
     3 {   int num,a;
     4     if(n==1)
     5         {
     6             scanf("%d",&num);
     7             printf("%d ",num);
     8         }
     9     if(n>1)
    10         {
    11             scanf("%d",&a);
    12             num=a;
    13             inverse(n-1);
    14             printf("%d ",num);
    15         }
    16 }
    17 int main()
    18 {
    19     int n,i;
    20     scanf("%d",&n);
    21     inverse(n); 
    22     return 0;
    23 }

    易错分析:

    递归思想不理解,题意不能准确分析。

  • 相关阅读:
    repr() Vs str()
    默认参数
    元组
    字典
    电脑可以办的两类最基本的事情
    代码块
    变量名
    print的逻辑
    input的逻辑
    让python2听懂中文
  • 原文地址:https://www.cnblogs.com/yuanqingwen/p/10356358.html
Copyright © 2011-2022 走看看