使用函数求奇数和 求成绩的最大值

发布时间 2023-11-25 23:20:05作者: 鸢凛

6-1 使用函数求奇数和

本题要求实现一个函数,计算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

解题思路:

  1.通过阅读题目可知:

    (1)函数even将根据用户传入的参数n的奇偶性返回相应值,当n为偶数时返回1,否则返回0

    (2)函数OddSum负责计算并返回传入的N个整数List[]中所有奇数的和

  2.因此可以在OddSum中利用even判断函数是否为奇数,如果返回值为0,即奇数则进行加法计算

int even( int n ){
    if(n%2==0){
        return 1;
    }
    return 0;
}
int OddSum( int List[], int N ){
    int result = 0;
    for(int i=0;i<N;i++){
        if(even(List[i])==0){
            result += List[i];
        }
    }
    return result;
}

7-2 求成绩的最大值

某次比赛中有7位评委进行评分,评分规则按照百分制整数进行打分。请设计一个程序,输入7位评委的评分,计算其中的最高分并进行输出。

输入格式:

输入为7个(0,100]范围内的整数,以空格隔开。

输出格式:

输出选手的最高得分。

输入样例:

在这里给出一组输入。例如:

81 86 93 75 86 79 90

输出样例:

在这里给出相应的输出。例如:

选手最高得分:93

解题思路:

  1.循环读入数据,使用max记录最大值,如果读入的数据大于max则用max记录该数数值,最后将最大值输出

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int max = 0;
        for(int i=0;i<7;i++){
            int number = in.nextInt();
            if(max<number){
                max = number;
            }
        }
        System.out.println("选手最高得分:" + max);
    }
}