使用递归实现数组求和示例分享

 更新时间:2014年03月06日 16:17:51   作者:  
这篇文章主要介绍了使用递归实现数组求和示例,思路是给定一个含有n个元素的整型数组a,求a中所有元素的和,需要的朋友可以参考下

思路如下:

给定一个含有n个元素的整型数组a,求a中所有元素的和。问题的难点在于如何使用递归上。如果使用递归,则需要考虑如何进行递归执行的开始以及终止条件,首先如果数组元素个数为0,那么和为0。同时,如果数组元素个数为n,那么先求出前n-1个元素之和,再加上a[n-1]即可。此时可以完成递归功能。总之,递归就是在某个函数的执行过程中首先判断它的终止条件参数,终止条件参数满足终止条件则执行完毕,终止条件参数不满足终止条件则调用它自身执行某项运算,比如这里求和就是执行加法。凡是递归一定都有一个参数作为终止条件,比如这里是数组中未加入求和队列的元素个数,初始为数组长度。因为终止条件参数的初始值为数组长度,所以从数组的最后一个元素作为求和队列的第一个元素开始,每递归一次就将数组中的一个元素划归到求和队列中,同时将终止条件参数减1,直到其未为0,标明所有元素都已加入求和队列,返回求和队列的值即可。可见递归至少有两个参数,终止条件参数以及递归对象。

代码如下:

复制代码 代码如下:

// 1311.cpp : 定义控制台应用程序的入口点。
#include "stdafx.h"
#include<stdio.h>
int GetSum(int *a,int n)
{
    return n == 0 ? 0 : GetSum(a,n - 1) + a[n-1];
}
int main()
{
    int a[] = { 3, 6, 8, 2, 1 };
    int length = sizeof(a) / sizeof(a[0]);
    printf("%d\n", GetSum(a, length));
    getchar();
    return 0;
}

相关文章

  • C#开发WinForm清空DataGridView控件绑定的数据

    C#开发WinForm清空DataGridView控件绑定的数据

    本文详细讲解了C#开发WinForm清空DataGridView控件绑定数据的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • C#/VB.NET 将Word与Excel文档转化为Text

    C#/VB.NET 将Word与Excel文档转化为Text

    这篇文章主要介绍了C#/VB.NET 将Word与Excel文档转化为Text,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
    2022-08-08
  • C#打开扬声器的实操方法和代码

    C#打开扬声器的实操方法和代码

    在本篇文章中我们给大家分享的是关于C#如何打开扬声器的相关知识点内容,需要的读者们学习下。
    2019-08-08
  • C#实现拆分字符串的示例详解

    C#实现拆分字符串的示例详解

    这篇文章主要为大家详细介绍了C#如何分别使用正则表达式Regex.Split方法和String.Split方法实现拆分字符串,有需要的小伙伴可以参考一下
    2024-02-02
  • C#中设计、使用Fluent API

    C#中设计、使用Fluent API

    这篇文章主要介绍了C#中设计、使用Fluent API,本文讲解了最简单且最实用的设计、设计具有调用顺序的Fluent API、泛型类的Fluent设计等内容,需要的朋友可以参考下
    2015-03-03
  • C#控件Picturebox实现鼠标拖拽功能

    C#控件Picturebox实现鼠标拖拽功能

    这篇文章主要为大家详细介绍了C#控件Picturebox实现鼠标拖拽功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09
  • C#使用foreach语句遍历集合类型的方法

    C#使用foreach语句遍历集合类型的方法

    这篇文章主要介绍了C#使用foreach语句遍历集合类型的方法,可实现通过foreach语句遍历集合类的功能,需要的朋友可以参考下
    2015-06-06
  • C#控件闪烁的解决方法

    C#控件闪烁的解决方法

    这篇文章主要介绍了C#控件闪烁的解决方法,涉及SetStyle函数的使用技巧,需要的朋友可以参考下
    2015-01-01
  • C# log4net 日志输出的实现示例

    C# log4net 日志输出的实现示例

    本文主要介绍了C# log4net 日志输出的实现示例,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • C#线程队列用法实例分析

    C#线程队列用法实例分析

    这篇文章主要介绍了C#线程队列用法,以实例形式分析了C#线程队列的创建、运行、等待、结束等操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-09-09

最新评论