溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

給定一系列正整數(shù),請按要求對數(shù)字進(jìn)行分類,

發(fā)布時間:2020-08-05 22:09:30 來源:網(wǎng)絡(luò) 閱讀:994 作者:PlayWithYou 欄目:編程語言

題目鏈接

https://www.nowcoder.com/pat/6/problem/4078

題目描述

給定一系列正整數(shù),請按要求對數(shù)字進(jìn)行分類,并輸出以下5個數(shù)字:



A1 = 能被5整除的數(shù)字中所有偶數(shù)的和;

A2 = 將被5除后余1的數(shù)字按給出順序進(jìn)行交錯求和,即計算n1-n2+n3-n4...;

A3 = 被5除后余2的數(shù)字的個數(shù);

A4 = 被5除后余3的數(shù)字的平均數(shù),精確到小數(shù)點(diǎn)后1位;

A5 = 被5除后余4的數(shù)字中最大數(shù)字。


輸入描述:

每個輸入包含1個測試用例。每個測試用例先給出一個不超過1000的正整數(shù)N,隨后給出N個不超過1000的待分類的正整數(shù)。數(shù)字間以空格分隔。



輸出描述:

對給定的N個正整數(shù),按題目要求計算A1~A5并在一行中順序輸出。數(shù)字間以空格分隔,但行末不得有多余空格。

若其中某一類數(shù)字不存在,則在相應(yīng)位置輸出“N”。


輸入例子:

13 1 2 3 4 5 6 7 8 9 10 20 16 18


輸出例子:

30 11 2 9.7 9

參考代碼:

#include<stdio.h>
#include<stdlib.h>
#define MAX(a,b) (a>b)?a:b
int main()
{
    int sum=0,sum1=0,sum1_flag=1,num2=0,sum3=0,sum3_num=0,max4=0,num,data;
    scanf("%d",&num);
    for(;num>0;num--){
        scanf("%d",&data);
        switch(data%5){
        case 0:
            if(!(data%2))
              sum+=data;
            break;
        case 1:
            sum1+=sum1_flag*data;
            sum1_flag*=-1;
            break;
        case 2:
            num2++;
            break;
        case 3:
            sum3+=data;
            sum3_num++;
            break;
        case 4:
            max4=MAX(max4,data);
            break;
        default :
            break;
        }
    }
    if(sum>0&&sum1>0&&num2>0&&sum3_num>0&&max4>0)
        printf("%d %d %d %.1f %d\n",sum,sum1,num2,1.0*sum3/sum3_num,max4);
    else{
        if(sum!=0)
            printf("%d ",sum);
         else
            printf("N ");
        if(sum1!=0)
            printf("%d ",sum1);
         else
            printf("N ");
        if(num2!=0)
            printf("%d ",num2);
         else
            printf("N ");
        if(sum3!=0)
            printf("%.1f ",1.0*sum3/sum3_num);
         else
            printf("N ");
        if(max4!=0)
            printf("%d",max4);
         else
            printf("N");
    }
    return 0;
}


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI