統計多個學生的多門課的成績(結構體)
問題描述:
設有10個學生,每個學生的資料的包括學號,姓名,三門課的成績。要求從鍵盤輸入10個學生的資料,統計並列印
出三門課的平均成績,以及最高分的學生的資料(包括學號,姓名,三門課的成績,平均成績)。
演算法分析:
求每個學生的平均成績是要執行1.0次,所以使用for迴圈完成。
求分數最高的學生,就是求這10個數據中的最大者,先假設第1個事最大的,將其賦予記錄最大數的變數max,然後
用max和後面的資料一 一比較,只要發現比max大的數,就將此數賦予max,並記錄下當前的序號,也就是當前最大數
是第幾個數,知道結束。
原始碼:
#include<stdio.h>
struct student
{
char num[4];
char name[8];
float score[3];
float avr;
}stu[10];
void main()
{
int i,j,maxi;
float max,sum,aver;
for(i=0;i<10;i++) /*輸入學生的資料*/
{
printf("請輸入地%d個學生的資料:\n",i+1);
printf("輸入學號:");
scanf("%s",stu[i].num);
printf("輸入姓名:");
scanf("%s",stu[i].name);
for(j=0;j<3;j++)
{
printf("輸入第%d門課的成績:",j+1);
scanf("%f",&stu[i].score[j]);
}
}
aver = 0;
max = 0;
maxi = 0;
for(i=0;i<10;i++) /* 分別求10個學生的平均成績,最高分的學生的序號 */
{
sum = 0;
for(j=0;j<3;j++)
sum +=stu[i].score[j];
stu[i].avr = sum / 3.0;
aver += stu[i].avr;
if(sum > max) /* 地i個學生的總分和當前最高分比較 */
{
max = sum;
maxi = i;
}
}
aver /= 10; /* 求總平均成績 */
printf("總的平均成績是:%.3f\n",aver);
printf("最高分的學生的學號,姓名,三門課的成績分別為:\n");
printf("%s %s %.2f %.2f %.2f\n",stu[maxi].num,stu[maxi].name,stu[maxi].score[0],
stu[maxi].score[1],stu[maxi].score[2],stu[maxi].avr);
}
相關推薦
統計多個學生的多門課的成績(結構體)
問題描述: 設有10個學生,每個學生的資料的包括學號,姓名,三門課的成績。要求從鍵盤輸入10個學生的資料,統計並列印 出三門課的平均成績,以及最高分的學生的資料(包括學號,姓名,三門課的成績,平均成績)。 演算法分析: 求每個學生的平均成績是要執行1.0次,所以使用for
一臺機器同時執行多個Tomcat服務解決方案(2017更新)
作者:fbysss msn:[email protected] blog:blog.csdn.net/fbysss 宣告:本文由fbysss原創,轉載請註明出處 關鍵字:Tomcat 如何在一臺伺服器上安裝多個Tomcat 假設有2個tomcat,分別為 /
kafka測試同一個消費組的多個消費者負載均衡例項(整合spring)
這裡使用的是zookeeper和kafka3臺機器的叢集,這樣能保證如過有一臺機器炸了還能執行,在叢集環境中,要在kafka的 server.properties中配置zookeeper叢集地址等資訊,最重要的是num.partitions=3.這樣一個分割槽就是一個機器,所以當kaf
電腦中安裝多個Tomcat,如何配置(已經解決)
當電腦中已經有一個Tomcat時,由於不同的專案需要,所支援的Tomcat的版本不同,因此一個電腦中需要安裝多個Tomcat,接下來介紹怎樣安裝多個Tomcat的具體實現: 安裝前
Basler 多個網口相機出圖(SDK版)
利用basler相機自帶的SDK進行多相機出圖,為了便於理解,特將多相機出圖部分的程式拷貝出來,在win32控制檯環境下,配合OpenCV進行出圖測試。 執行環境:VS2013、OpenCV2410 OpenCV的安裝流程可參考其它的文件 此外需要安裝basler相機的
C/C++複習:成績統計(結構體)
/* *Copyright(c)2016,煙臺大學計算機與控制工程學院 *All right reserved. *檔名稱:77.cpp *作 者:董凱琦 *完成日期:2016年4月26日 *版 本 號:v1.0 * *問題描述:建立一個簡單的學生資訊
selenium多個視窗之間的切換(瀏覽器視窗)
from selenium import webdriver d=webdriver.Firefox() d.get("http://www.baidu.com") d.find_element_by_id('kw').clear() d.find_element_b
【C語言】用結構體陣列指標完成:有三個學生資訊,存放在結構體陣列中,要求輸出全部資訊
//用結構體陣列指標完成:有三個學生資訊,存放在結構體陣列中,要求輸出全部資訊 #include <stdio.h> struct Stu { int num; char name[2
連結串列中 指向 節點(結構體)指標 的指標(二重指標)(原題目為pta上查詢倒數k個位置上的數字)
#include<stdio.h> #include<stdlib.h> typedef struct list{ int num; struct list *next; }List ,*LIST; LIST createlist(LIST *L,
C++復合類型(結構體)
iou .cn blog ges tor 例如 sig leon guests 其實c++的結構體可以理解為類似於python的字典,我個人理解, 但有區別 先看結構 #include <iostream> 關鍵字 標記成為新類型的名
五、PTA實驗作業(結構體)
截圖 image 分數 blog double img class namespace def 1、提交列表 2、設計思路就是設計一個類似於在數組裏面求最低和最大數值的函數 最終代碼如下: #include<iostream> #incl
PAT 1004 Counting Leaves(結構體)
A family hierarchy is usually presented by a pedigree tree. Your job is to count those family members who have no child. Input Specification: Each input
MFC視窗之間傳遞資料(結構體)
MFC視窗之間的通訊一般會利用傳送訊息的方式傳遞,那麼具體如何實現呢,程式碼如下: 下面實現的是一個子視窗把訊息傳送到主視窗的示例: 1.訊息傳送視窗部分程式碼: 首先新增自定義訊息; #defi
Solidify實現一個智慧合約11(結構體)
結構體的宣告 pragma solidity ^0.4.4; contract Students { struct Person { uint age; uint stuId;
C語言基礎五(結構體)
結構體 結構體是一種資料結構. 陣列也是一種資料結構,但是陣列存放的資料型別比較單一,結構體解決了數組裡不能存放 多種型別資料 的這種缺陷。 結構體宣告,定義 //宣告 struct infor // struct infor 是識別符號,
C語言:念數字(結構體)
輸入一個整數,輸出每個數字對應的拼音。當整數為負數時,先輸出“fu”字。十個數字對應的拼音如下: 0: ling 1: yi 2: er 3: san 4: si 5: wu 6: liu 7: q
hdu1236排名(結構體)
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; #define N 1005 int q
uefi bios pei 階段最重要的一個數據結構(結構體)
在PEI階段,全域性變數大概有這麼幾個: gPs PEI Service 結構的實現,包括所有的PEI 服務的函式指標。比如學見的PeiInstallPPi, PeiCreateHob, PeiSetSystem. 其次就是PrivateData, 這個是今天我們要討論
強制型別(結構體)轉換NULL-----C指標的黑科技
一個頭疼的例子(改寫自Tencent—libco) #include<stdio.h> #include<string.h> typedef struct aa{ char a; int b; char o[3]
有10個學生,每個學生的資料包括學號、姓名、3門課的成績,編寫如下函式: (1) 輸入10個學生 的基本資訊(input); (2) 求出每個學生的平均分(average); (3) 求出平均分
1、 有10個學生,每個學生的資料包括學號、姓名、3門課的成績,編寫如下函式: (1) 輸入10個學生 的基本資訊(input); (2) 求出每個學生的平均分(average); (3) 求出平均分最高的學生資訊(high_score);