日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

C语言编程-对数字进行分类

發(fā)布時間:2023/12/16 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C语言编程-对数字进行分类 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

題目描述

給定一系列正整數(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ù)點后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

解題思路

1.尋找規(guī)律,題目所求五個數(shù)都跟被5除后的余數(shù)有關(guān),所以可以利用switch……case求解
2.根據(jù)分類類別編寫case語句內(nèi)容
3.根據(jù)條件進(jìn)行判斷,若其中某一類數(shù)字不存在,則在相應(yīng)位置輸出“N”

根據(jù)類別編寫case語句內(nèi)容

switch(i%5){case 0: //能被5整除的數(shù)字中所有偶數(shù)的和if(i%2==0)a[0]=a[0]+i;break;case 1: //將被5除后余1的數(shù)字按給出順序進(jìn)行交錯求和if(j%2==0)i=-i;a[1]=a[1]+i;j++;break;case 2: //被5除后余2的數(shù)字的個數(shù)a[2]++;break;case 3: //被5除后余3的數(shù)字的平均數(shù)a[3]=a[3]+i;k=k+1;break; //被5除后余4的數(shù)字中最大數(shù)字case 4:if(i>a[4])a[4]=i;}

根據(jù)條件進(jìn)行判斷

for(i=0;i<5;i++){if(i> 0) printf(" ");if(a[i]==0){ //當(dāng)數(shù)組中某一項等于0時if(i!=1) //如果不是A2就直接輸出Nprintf("N");else if(j==1) // j=1說明沒有自增,不滿足條件直接輸出Nprintf("N");elseprintf("%d",a[i]);}else if(i==3) printf("%.1f",a[i]/k); //輸出平均數(shù)else printf("%d",a[i]);}

總結(jié)

以上是生活随笔為你收集整理的C语言编程-对数字进行分类的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。