c語言加權排名,排名次c語言

本文目錄一覽:

c語言 學生成績排名

#includestdio.h

void setList(int *a,int len);

void printfList(int *a,int len);

void pxList(int *a,int len);

void  insertList(int *a,int len);

void  fanList(int *a,int len);

int main()

{

    int a[11];//1.定義一個數組a[11],用以存放學生的成績。

    setList(a,10);//2.從鍵盤輸入10個學生成績。

    pxList(a,10);//3.採用選擇法,將學生成績按照從高到低進行排序。

    printfList(a,10);

    insertList(a,10);//4.再輸入一個學生的成績,將此成績按照排序規律插入原學生成績數組。

    printfList(a,11);

    fanList(a,11);//5.將排好序的成績單進行反序存放,即原來是從高到低,現在改為從低到高排列

    printfList(a,11);

    return 0;

}

void setList(int *a,int len)//輸入

{

    int i;

    printf(“請輸入%d個學生成績\n”,len);

    for(i=0;ilen;i++)

        scanf(“%d”,a[i]);

}

void printfList(int *a,int len)//打印數組

{

    int i;

    printf(“\n—打印數組—\n”);

    for(i=0;ilen;i++)

        printf(“%d “,a[i]);

}

void pxList(int *a,int len)// 選擇排序

{

    int i,j;

    printf(“\n—從大到小排序—\n”);

    for(i=0;ilen-1;i++)

        for(j=i+1;jlen;j++)

            if(a[i]a[j])

            {

                a[j]^=a[i];

                a[i]^=a[j];

                a[j]^=a[i];

            }

}

void  insertList(int *a,int len)//插入數組

{

    printf(“\n—插入數組—\n”);

    printf(“輸入要插入的數:”);

    scanf(“%d”,a[len]);

    pxList(a,11);

}

void  fanList(int *a,int len)//數組反向存儲

{

    int *p0,*p1;

    p0=a;

    p1=a[len-1];

    while(p0p1)

    {

        *p0^=*p1;

        *p1^=*p0;

        *p0^=*p1;

        p0++;

        p1–;

    }

}

c語言中排名怎麼搞

C語言用struct實現,把信息包含在同一個struct裏面就可以了,每個struct對應一個學生。然後你建立一個N維struct數組即可。

或者C++用類實現。

再普通一些,用鏈表,把所有數據通過指針項定位進行綁定。

編程語言排名2021

近日, TIOBE 編程社區揭曉了2021年2月各大編程語言的排行情況,C語言繼續霸榜第一名,第二名則是Java,Python位居第三。

從排行來看,前10名編程語言和上個月沒有太大變化,排在前列的依舊是C、Java、Python、C++、C#。

第 9 和第 10 並不像排名前 8 的位置那麼固定。在過去的 12 個月中,這 2 個位置分別由 SQL ,彙編語言(Assembly language) ,R 語言 ,Groovy ,Go 語言 和 Swift 佔據。

用C語言計算加權分數

本人(無界)用C-Free親手編寫的,親測可運行

# include stdio.h

struct stu{ //用結構體數組儲存學生的成績和學分 

float score; //成績

float credit; //學分

}Stu[100];

int main()

{

unsigned int x=1,y=0;

//y用於結構體數組Stu,同時用於循環計算該學生成績 

double sxcsum=0,csum=0,sum; 

//sxcsum記錄所有成績乘以學分之和

//csum學分之和 

//sum加權成績 

printf(“提示:輸入完後按回車鍵結束,輸入負數代表學生成績輸入完成\n”); 

while(1) //循環用戶輸入成績,直到用戶輸入完成後結束 

{

printf(“請輸入第%d門課程的成績:”,x);

scanf(“%f”,Stu[y].score);  

getchar(); //吸收回車鍵字符

if(Stu[y].score0) break; //輸入負數結束循環,結束學生輸入成績操作 

printf(“請輸入第%d門課程的學分:”,x++);

scanf(“%f”,Stu[y++].credit);

getchar();

if(Stu[y-1].credit0) break;

}

printf(“—輸入成績結束—\n”);

for(x=0;xy;x++) //循環計算成績,直到算完所有課程 ,y變量儲存共有多少門課程 

{

sxcsum+=Stu[x].score*Stu[x].credit;

csum+=Stu[x].credit;

}

sum=sxcsum/csum;

printf(“該學生的加權成績為:%g\n”,sum);

return(0);

}

—「無界」回答—

C語言學生成績排名

舉個例子,學生的成績依次為:7,5,6,3,8,排名初始化為1,2,3,4,5

根據你的程序:

經過第一次循環,即i=0;j=0時,程序排序依舊為7,5,6,3,8;排名為:1,3,2,5,4

如果在往下循環執行,第五名同學的最高成績「8」分,將永遠處於第4名;

所以,有錯誤。。。

修改建議:

可以參考排序,每次循環總能得到一個最大值,將此最大值所在結構體的排名rank賦值:

大概如下:

for(i=0;i5;i++)

{

for(j=0;j4-i;j++)

{

if(student[j].totalstudent[j+1].total)

{

//temp也是結構體,交換

temp = student[j];

student[j] = student[j+1];

student[j+1] = temp;

}

}

student[j].rank = i+1;

}

也可以用結構體指針,不需要每次交換,只需要標記下最大值,然後賦予名次~

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/245090.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 13:05
下一篇 2024-12-12 13:06

相關推薦

  • AES加密解密算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演着非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29
  • Python按位運算符和C語言

    本文將從多個方面詳細闡述Python按位運算符和C語言的相關內容,並給出相應的代碼示例。 一、概述 Python是一種動態的、面向對象的編程語言,其按位運算符是用於按位操作的運算符…

    編程 2025-04-29
  • Python語言由荷蘭人為中心的全能編程開發工程師

    Python語言是一種高級語言,很多編程開發工程師都喜歡使用Python語言進行開發。Python語言的創始人是荷蘭人Guido van Rossum,他在1989年聖誕節期間開始…

    編程 2025-04-28
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28
  • Python語言實現人名最多數統計

    本文將從幾個方面詳細介紹Python語言實現人名最多數統計的方法和應用。 一、Python實現人名最多數統計的基礎 1、首先,我們需要了解Python語言的一些基礎知識,如列表、字…

    編程 2025-04-28
  • Python作為中心語言,在編程中取代C語言的優勢和挑戰

    Python一直以其簡單易懂的語法和高效的編碼環境而著名。然而,它最近的發展趨勢表明Python的使用範圍已經從腳本語言擴展到了從Web應用到機器學習等廣泛的開發領域。與此同時,C…

    編程 2025-04-28
  • Python基礎語言

    Python作為一種高級編程語言擁有簡潔優雅的語法。在本文中,我們將從多個方面探究Python基礎語言的特點以及使用技巧。 一、數據類型 Python基礎數據類型包括整數、浮點數、…

    編程 2025-04-28

發表回復

登錄後才能評論