[PTA]实验5-3 使用函数求奇数和

Posted Spring-_-Bear

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[PTA]实验5-3 使用函数求奇数和相关的知识,希望对你有一定的参考价值。

[PTA]实验5-3 使用函数求奇数和

本题要求实现一个函数,计算N个整数中所有奇数的和,同时实现一个判断奇偶性的函数。

函数接口定义:

int even( int n );
int OddSum( int List[], int N );

其中函数even将根据用户传入的参数n的奇偶性返回相应值:当n为偶数时返回1,否则返回0。函数OddSum负责计算并返回传入的N个整数List[]中所有奇数的和。

裁判测试程序样例:

#include <stdio.h>

#define MAXN 10

int even( int n );
int OddSum( int List[], int N );

int main()
{    
    int List[MAXN], N, i;

    scanf("%d", &N);
    printf("Sum of ( ");
    for ( i=0; i<N; i++ ) {
        scanf("%d", &List[i]);
        if ( even(List[i])==0 )
            printf("%d ", List[i]);
    }
    printf(") = %d\\n", OddSum(List, N));

    return 0;
}

/* 你的代码将被嵌在这里 */

输入样例:

6
2 -3 7 88 0 15

输出样例:

Sum of ( -3 7 15 ) = 19
  • 提交结果:

在这里插入图片描述

  • 源码:
#include <stdio.h>

#define MAXN 10

int even(int n);
int OddSum(int List[], int N);

int main()
{
    int List[MAXN], N, i;

    scanf("%d", &N);
    printf("Sum of ( ");
    for (i = 0; i < N; i++) {
        scanf("%d", &List[i]);
        if (even(List[i]) == 0)
            printf("%d ", List[i]);
    }
    printf(") = %d\\n", OddSum(List, N));

    return 0;
}

/* 你的代码将被嵌在这里 */
// 根据用户传入的参数n的奇偶性返回相应值:当n为偶数时返回1,否则返回0。
int even(int n)
{
    if (n % 2 == 0)
    {
        return 1;
    }

    return 0;
}

// 函数OddSum负责计算并返回传入的N个整数List[]中所有奇数的和。
int OddSum(int List[], int N)
{
    int oddSum = 0;

    for (int j = 0; j < N; j++)
    {
        if (even(List[j]) == 0)
        {
            oddSum += List[j];
        }
    }

    return oddSum;
}

以上是关于[PTA]实验5-3 使用函数求奇数和的主要内容,如果未能解决你的问题,请参考以下文章

[PTA]习题5-2 使用函数求奇数和

[PTA]实验2-3-3 求奇数分之一序列前N项和

[PTA]实验5-5 使用函数求素数和

[PTA]实验6-3 使用函数求特殊a串数列和

[PTA]实验5-7 使用函数求1到10的阶乘和

[PTA]实验5-11 使用函数求最大公约数