编程学习网 > 编程语言 > C/C++开发 > c语言编程程序设计:数列求和
2022
10-14

c语言编程程序设计:数列求和

问题描述

已知某数列前两项为2和3,其后继项根据前面最后两项的乘积,按下列规则生成:

① 若乘积为一位数,则该乘积即为数列的后继项;

② 若乘积为二位数,则该乘积的十位上的数字和个位上的数字依次作为数列的两个后继项。

输出该数列的前N项及它们的和。

输入格式

一个整数N(2≤N≤1000)。

输出格式

第1行输出该数列的前N项的和。

第2行输出该数列的前N项。

输入样例

10

输出样例

sum(10)=44

2 3 6 1 8 8 6 4 2 4

(1)编程思路。

 编写函数int sum(int *pa, int n)按数列的生成方法生成数列的前n项并保存在数组pa中,同时将前n项的和作为函数值返回。

(2)源程序。

#include <stdio.h>

#define MAXNUM 1001

int sum(int *pa, int n);

int main()

{

    int n,num[MAXNUM];

    scanf("%d",&n);

    printf("sum(%d)=%d\n",n,sum(num,n));

    for (int i=0;i<n;i++)

    {

        printf("%d ",num[i]);

    }

    printf("\n");

         return 0;

}

int sum(int *pa, int n)

{

    int count, total, temp;

    *pa = 2;

    *(++pa)=3;

    total=5;

    count=2;

    while (count++<n)

    {

       temp = *(pa-1) * (*pa);

       if (temp<10)

       {

           total+=temp;

           *(++pa) = temp;

       }

       else

       {

           *(++pa)= temp/10;

           total += *pa;

           if (count++<n)

           {

               *(++pa) = temp%10;

               total += *pa;

           }

        }

    }

    return total;

}

以上就是“c语言编程程序设计:数列求和”的详细内容,想要了解更多C++教程欢迎持续关注编程学习网

扫码二维码 获取免费视频学习资料

Python编程学习

查 看2022高级编程视频教程免费获取