C——求平均成績

Problem Description
假設一個班有n(n<=50)個學生,每人考m(m<=5)門課,求每個學生的平均成績和每門課的平均成績,并輸出各科成績均大于等于平均成績的學生數量。

Input
輸入數據有多個測試實例,每個測試實例的第一行包括兩個整數n和m,分別表示學生數和課程數。然后是n行數據,每行包括m個整數(即:考試分數)。

Output
對于每個測試實例,輸出3行數據,第一行包含n個數據,表示n個學生的平均成績,結果保留兩位小數;第二行包含m個數據,表示m門課的平均成績,結果保留兩位小數;第三行是一個整數,表示該班級中各科成績均大于等于平均成績的學生數量。 每個測試實例后面跟一個空行。

Sample Input

2 2
5 10
10 20

Sample Output

7.50 15.00
7.50 15.00
1

題目解析:

簡單來說:首先,多組數據輸入,第一行輸入兩個整數n,m,n代表學生人數;m代表有m科學科;然后輸出,每行代表每個學生的各科成績,每列代表各個學生的該科目分數
例如
學生1第一科分數、學生1第二科分數、學生1第三科分數 學生1第m科分數
學生2第一科分數、學生2第二科分數、學生2第三科分數 學生1第m科分數
學生3第一科分數、學生3第二科分數、學生3第三科分數 學生1第m科分數
……
學生n第一科分數、學生n第二科分數、學生n第三科分數 學生n第m科分數
以此類推
要求輸出三行:
第一行:輸出n個學生的平均成績,結果保留兩位小數
第二行:輸出m科分數的平均成績,結果保留兩位小數
第三行:輸出一個整數,表示該班級中各科成績均大于等于平均成績的學生數量。

思路分析:

簡單來說:首先,多組數據輸入,第一行輸入兩個整數a(學生數目),b(學科科目數);然后,以此輸入,一行一行的輸入,表示每一個學生的各科分數;每行表示每個學生的各科分數,每列表示單獨一科,每個學生的分數;

代碼如下:

#include<stdio.h>
int main()
{int a[50][50];double x,y,aver1[50],aver2[50],sum;         //aver1該數組存儲每個學生的各科的平均成績;aver2該數組存儲每科學科的平均成績int i,j,n,m,count,p;while(~scanf("%d%d",&n,&m)){count=0;                                //表示計數,記錄那些各科都高于平均分的學生的人數for(i=0;i<n;i++)for(j=0;j<m;j++)scanf("%d",&a[i][j]);           //錄入每個學生的各科成績for(i=0;i<n;i++){sum=0;for(j=0;j<m;j++)sum+=a[i][j];aver1[i]=sum/m;                     //將每個學生的各科的平均成績給存儲到aver1數組中}for(j=0;j<m;j++){sum=0;for(i=0;i<n;i++)sum+=a[i][j];aver2[j]=sum/n;                     //將每科學科的平均成績給存儲到aver2數組中}for(i=0;i<n;i++){p=1;for(j=0;j<m;j++)                    //這個for循環表示每個學生的所有科目的成績進行與aver2數組存儲的各科科目平均分進行比較if(a[i][j]<aver2[j])            //如果所有學生的各科學科分數都比各個學科的平均分要低的話{p=0;                        //p=0;break;                      //跳出循環}if(p)                               //如果p!=0的話,即有學生的各科成績都比各科的平均分要高或者一樣count++;                        //人數加一}for(i=0;i<n-1;i++)printf("%.2lf ",aver1[i]);          //輸出格式是保留兩位小數,這里是將前n-1位學生各科學科的平均分輸出,這里每一科成績之后都會有個空格printf("%.2lf\n",aver1[i]);             //輸出最后一位學生的各科學科的平均分,這里沒有空格for(i=0;i<m-1;i++)printf("%.2lf ",aver2[i]);          //同理,輸出格式是保留兩位小數,這里輸出的是前m-1科學科的平均分,這里每一科學科的平均分最后都會有個空格printf("%.2lf\n",aver2[i]);             //輸出最后一科的學科平均分,這里的最后沒有空格printf("%d\n\n",count);                 //輸出count,也就是每科都超過各個學科的平均分的學生人數return 0;
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/379909.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/379909.shtml
英文地址,請注明出處:http://en.pswp.cn/news/379909.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

依賴、關聯、聚合、組合還有泛化的關系(轉載)

依賴、關聯、聚合、組合還有泛化的關系 此文為轉載文章:http://zjzkiss.cnblogs.com/世界是普遍聯系的&#xff0c;因此程序世界中的類&#xff0c;也不可能是孤立的。UML為我們定義了它們之間的關系&#xff0c;就是&#xff1a;依賴、關聯、聚合、組合還有泛化。 泛化關系比…

神奇的LINQ ---可以通過對象來查詢數據

摘要&#xff1a; linq:在一個新項目里面要用這個技術&#xff0c;然后自己拿起書看了下&#xff0c;記錄下自己的新發現&#xff0c;只適合簡單入門的新童鞋看呀&#xff01;&#xff01;&#xff01; 結論&#xff1a; linq是對象領域與數據領域的一個橋梁。 為什么會出現Lin…

java math.cos_Java Math類靜態double cos(double d)示例

java math.cos數學類靜態雙cos(double d) (Math Class static double cos(double d)) This method is available in java.lang package. 此方法在java.lang包中可用。 This method is used to return the trigonometric cosine of an angle of the given parameter in the meth…

web安全---SSRF漏洞

簡介 SSRF&#xff1a;服務器請求偽造&#xff0c;是一種攻擊者構造形成由服務端發起請求 的一個安全漏洞。一般情況下&#xff0c;SSRF攻擊的目標是從外網無法訪問的內部系統&#xff08;正是因為它是由服務端發起的&#xff0c;所以它能夠請求到與它相連而與外網隔離的內部系…

集合——對象數組(引用數據類型數組)

案例&#xff1a;我有5個學生&#xff0c;請把這個5個學生的信息存儲到引用數據類型數組中&#xff0c;并遍歷數組&#xff0c;獲取得到每一個學生的信息。 思路分析&#xff1a;首先&#xff0c;想要創建學生對象&#xff0c;就得有學生這個類&#xff0c;所以&#xff0c;首…

提升應用視覺Android效果的10個UI技巧

在Android應用開發中&#xff0c;風格和設計或許不是最關鍵的要素&#xff0c;但它們在決定Android應用成功與否上確實扮演重要的角色。以下是10個Android應用的UI設計技巧&#xff0c;還有個附加技巧&#xff0c;能夠提供你的Android應用的視覺吸引力。 技巧1&#xff1a;使用…

kotlin中判斷字符串_Kotlin程序查找字符串中字符的頻率

kotlin中判斷字符串Given a string and a character, we have to find the frequency of the character in the string. 給定一個字符串和一個字符&#xff0c;我們必須找到字符串中字符的頻率。 Example: 例&#xff1a; Input:string "IncludeHelp"character to…

OD使用

0x01 功能界面 序號1是匯編代碼對應的地址窗口序號2是匯編對應的十六進制機器碼窗口序號3是反匯編窗口序號4是反匯編代碼對應的注釋信息窗口序號5是寄存器信息窗口序號6是當前執行到的反匯編代碼的信息窗口序號7是數據所在的地址序號8是數據的十六進制編碼信息&#xff0c;序號…

windows mobile 開發總結--菜單

在開發時經常要創建菜單&#xff0c;并且動態顯示和隱藏菜單或者是某個子菜單。以下就是實現的方法&#xff1a; 1。創建并顯示菜單,先在資源里添加菜單&#xff0c;然后如下代碼 SHMENUBARINFO mbi; ZeroMemory(&mbi, sizeof(SHMENUBARINFO)); mbi.cbSizesizeof(SHMENUBAR…

Java——集合的概述

* A&#xff1a;集合的由來* 數組是容器&#xff0c;集合也是容器* 數組的弊端&#xff1a;數組的長度是固定的&#xff0c;當添加的元素超過了數組的長度時&#xff0c;需要對數組重新定義&#xff0c;太麻煩* Java內部給我們提供了集合類&#xff0c;可以存儲任意對象&#x…

排序算法中平均時間復雜度_操作系統中的作業排序(算法,時間復雜度和示例)...

排序算法中平均時間復雜度作業排序 (Job sequencing) Job sequencing is the set of jobs, associated with the job i where deadline di > 0 and profit pi > 0. For any job i the profit is earned if and only if the job is completed by its deadline. To complet…

python---文件處理

0x01 打開一個文件 python中內置了文件對象&#xff0c;通過open()函數就可以制定模式打開指定文件&#xff0c;并創建文件對象。該函數的格式如下&#xff1a; open(file[,moder[,buffering-1]])file&#xff1a;指定要打開或創建的文件名稱&#xff0c;如果該文件不存在當前…

簡易而又靈活的Javascript拖拽框架(四)

一、開篇 似乎拖拽已經被寫爛了&#xff0c;沒得寫的了&#xff0c;可是我這次又來了&#xff5e; 上一次寫的是跨列拖放&#xff0c;這次我要帶給大家的是跨頁拖放。 可以到這里來看看效果&#xff1a;示例效果 說明&#xff1a;1、如果將方框拖動到頁簽上立刻釋放掉的話&…

Java——集合的基本功能測試

* 1,boolean add<E,e> 添加* 確保此 collection 包含指定的元素&#xff08;可選操作&#xff09;。* 參數&#xff1a;e - 確定此 collection 中是否存在的元素。E - 代表Object類&#xff0c;說明該add可以添加任何對象&#xff0c;任意對象都是Object的子類對象&…

《那些年啊,那些事——一個程序員的奮斗史》——78

招人風波之后&#xff0c;就很少見武總往18樓跑了&#xff0c;大部分時間都是坐在22樓的隔間。而武總對段伏櫪的抱怨&#xff0c;也僅僅只有那次&#xff0c;后來就再也沒有提過。對于段伏櫪而言&#xff0c;還要不要招新人&#xff0c;后續如何去招新人&#xff0c;已經不是自…

python---異常處理結構

python中提供了很多不同形式的異常處理結構&#xff0c;其基本思路都是先嘗試執行代碼&#xff0c;再處理可能發生的錯誤。 try…except… 在python異常處理結構中&#xff0c;try…except…使用最為頻繁&#xff0c;其中try子句中的代碼塊為可能引發異常的語句&#xff0c;e…

用css網站布局之十步實錄 (轉載)

第一步&#xff1a;規劃網站http://www.52css.com/article.asp?id175 第二步&#xff1a;創建html模板及文件目錄等http://www.52css.com/article.asp?id176 第三步&#xff1a;將網站分為五個div 網頁基本布局http://www.52css.com/article.asp?id177 第四步&#xff1a;網…

Java——集合轉數組并對其進行遍歷

* A&#xff1a;集合的遍歷* 其實就是以此獲取集合中的每一個元素* B&#xff1a;案例* 把集合轉成數組&#xff0c;可以實現集合的遍歷* public Object[] toArray() 按適當順序&#xff08;從第一個到最后一個元素&#xff09;返回包含此列表中所有元素的數組。…

魚油賬號記錄程序(續) - 零基礎入門學習Delphi39

魚油賬號記錄程序&#xff08;續&#xff09; 讓編程改變世界 Change the world by program 課件同上一講&#xff0c;這一講主要演示編程操作和修改程序&#xff01; [buy] 獲得所有教學視頻、課件、源代碼等資源打包 [/buy] [Downlink hrefhttp://kuai.xunlei.com/d/LDKX…

python---Socket編程

Sockte是計算機之間進行網絡通信的一套程序接口&#xff0c;相當于在發送端和接收端之間建立一個通信管道。在實際應用中&#xff0c;一些遠程管理軟件和網絡安全軟件大多數依賴于Socket來實現特定功能&#xff0c;由于TCP方式在網絡編程中應用非常頻繁&#xff0c;此處將對TCP…