c++ 高來請近來指教唷(陣列)

請用3xN(列x行)陣列的方式撰寫一個程式,其中N為總科目數。用來計算你的各科成積,其中第一列為課目代號,第二列為學分數,第三列為成積。該程式可計算:

i.不及科目數

ii.不及學分數

iii.平均分數= ,其中 為各科成積, 各科對應的學分數

請問這題目 在問什麼,實在想不出該如何下手,高手請幫幫忙

1 個解答

評分
  • 1 0 年前
    最佳解答

    #include <iostream>

    using namespace std;

    int main()

    {

    int n;

    cout<<"數入科目總數:";

    cin>>n;

    int a[3][n];

    for(int i=0;i<n;i++)

    {

    for(int j=0;j<3;j++)

    {

    if(j==0)

    cout<<"科目代號:";

    else if(j==1)

    cout<<"學分數:";

    else

    cout<<"分數:";

    cin>>a[j][i];

    }

    cout<<endl;

    }

    for(int i=0;i<n;i++)

    {

    for(int j=0;j<3;j++)

    {

    cout<<a[i][j]<<" ";

    }

    cout<<endl;

    }

    int no=0,num=0;

    for(int k=0;k<n;k++)

    {

    if(a[2][k]<60)

    {

    no++;//不及格科目數

    num+=a[1][k];//不及科學分數

    }

    }

    cout<<"不及格科目數 "<<no<<" 科"<<endl;

    cout<<"不及格學分數 "<<num<<" 個"<<endl;

    int total=0,sum=0;

    for(int i=0;i<n;i++)

    {

    sum+=a[1][i];//學分

    total+=a[1][i]*a[2][i];//學分*分數

    }

    cout<<"平均分數:"<<total/sum<<endl;

    system("pause");

    return 0;

    }

    參考看看吧~

    參考資料: myself
還有問題?馬上發問,尋求解答。