C語言實現(xiàn)成績統(tǒng)計示例
C語言 成績統(tǒng)計問題
題目描述
某班有學(xué)生 n 人,從終端讀入 n 及 n 個人學(xué)生的成績,試編程實現(xiàn)以下功能:
①打印出前 3 個最好成績及取得每個最好成績的人數(shù);
②若 90 分以上計為優(yōu),75-89 分計為“良”,60-74 分計為“中”,60 分以下計為“不及格”,試統(tǒng)計各檔成績所占百分率。
代碼:
#include<stdio.h> int main() { int n,i=1,grade,x_1=0,x_2=0,x_3=0,t,n_1=1,n_2=1,n_3=1,a=0,b=0,c=0,d=0; //x_1,x_2,x_3為前三名學(xué)生成績,n_1,n_2,n_3為前三名相應(yīng)人數(shù),a,b,c,d為每個成績等級學(xué)生數(shù) printf("請輸入學(xué)生人數(shù):"); scanf("%d",&n); getchar(); do { printf("請輸入第%d個學(xué)生的成績:",i); scanf("%d",&grade); getchar(); if(grade>=90) a++; else if(grade>=75&&grade<=89) b++; else if(grade>=60&&grade<=74) c++; else if(grade>=0&&grade<=59) d++; else printf("請輸入正確成績:"); if(grade==x_1) n_1++; else if(grade==x_2) n_2++; else if(grade==x_3) n_3++; else if(grade>x_3) {x_3=grade;n_3=1;} if(x_1<x_2) {t=x_1;x_1=x_2;x_2=t;t=n_1;n_1=n_2;n_2=t;} if(x_1<x_3) {t=x_1;x_1=x_3;x_3=t;t=n_1;n_1=n_3;n_3=t;} if(x_2<x_3) {t=x_2;x_2=x_3;x_3=t;t=n_2;n_2=n_3;n_3=t;}//將成績進(jìn)行排序 ,相對應(yīng)的人數(shù)也要進(jìn)行交換 i++; }while(i<=n); printf("第一名為:%d,有%d名\n",x_1,n_1); printf("第二名為:%d,有%d名\n",x_2,n_2); printf("第三名為:%d,有%d名\n",x_3,n_3); printf("成績等級為“優(yōu)”占比為:%.2f\n",a*1.0/n); printf("成績等級為“良”占比為:%.2f\n",b*1.0/n); printf("成績等級為“中”占比為:%.2f\n",c*1.0/n); printf("成績等級為“不及格”占比為:%.2f\n",d*1.0/n); return 0; }
運(yùn)行結(jié)果:
C語言實現(xiàn)成績統(tǒng)計 ——藍(lán)橋
題目描述
小藍(lán)給學(xué)生們組織了一場考試,卷面總分為 100 分,每個學(xué)生的得分都是一個 0 到 100 的整數(shù)。
如果得分至少是 60 分,則稱為及格。如果得分至少為 85 分,則稱為優(yōu)秀。
請計算及格率和優(yōu)秀率,用百分?jǐn)?shù)表示,百分號前的部分四舍五入保留整 數(shù)。
#include <stdio.h> #include <stdlib.h> ? int main(int argc, char* argv[]) { ?? ? ?? ?int i , n , j = 0, k = 0; ?? ?int arr[10001] = { 0 }; ?? ?scanf("%d", &n);//輸入人數(shù) ?? ?for (i = 0; i < n; i++) ?? ?{ ?? ??? ?scanf("%d", &arr[i]);//輸入成績 ?? ??? ?if (arr[i] >= 60) ?? ??? ??? ?j++; ?? ??? ?if (arr[i] >= 85) ?? ??? ??? ?k++; ?? ?} ? int jige=0,youxiu=0; ? jige=j*100.0/n+0.5;//實現(xiàn)小數(shù)四舍五入 ? youxiu=k*100.0/n+0.5; ? ?printf("%d%%\n%d%%", jige,youxiu);輸出含有%的結(jié)果時要用到%% ?? ?return 0; }
在這里小編提一下有的編譯器可能會出現(xiàn)報錯。
嚴(yán)重性 代碼 說明 項目 文件 行 禁止顯示狀態(tài)
錯誤 C4996 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. Project7 D:\cccc\Project7\Project7\c7.c 64
但是這并不影響代碼的正確性。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
C語言不用鏈表完成學(xué)生管理系統(tǒng)(完整代碼)
這篇文章主要介紹了C語言不用鏈表完成學(xué)生管理系統(tǒng)(完整代碼),本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-04-04C++編程語言中賦值運(yùn)算符重載函數(shù)(operator=)的使用
本文主要介紹了C++編程語言中賦值運(yùn)算符重載函數(shù)(operator=)介紹,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06C++實現(xiàn)LeetCode(33.在旋轉(zhuǎn)有序數(shù)組中搜索)
這篇文章主要介紹了C++實現(xiàn)LeetCode(33.在旋轉(zhuǎn)有序數(shù)組中搜索),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07