當前位置:首頁 » 編程語言 » c語言誰拿了獎學金
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言誰拿了獎學金

發布時間: 2022-06-26 23:56:37

A. "誰拿了最多獎學金" C程序求助,在線等答案

這是我寫的C++代碼
希望能被採納,謝謝
你的這題目是NOIP的吧
我做過,現在我學NOI了

#include <iostream>
#define FOR(i,a,b) for(i=a;i<b;i++)
using namespace std;

struct Student
{
char name[21];
int m1,m2;
char c1,c2;
int p,total;
};

int main( void )
{
int n,i,totals(0),max(0);
cin >> n;
struct Student* team = new Student[n],* tmax ;
FOR(i,0,n) {
cin >> team[i].name
>> team[i].m1 >> team[i].m2
>> team[i].c1 >> team[i].c2
>> team[i].p;
team[i].total = 0;
}
FOR(i,0,n) {
if (team[i].m1 > 80 && team[i].p > 0) team[i].total += 800;
if (team[i].m1 > 85 && team[i].m2 > 80) team[i].total += 400;
if (team[i].m1 > 90) team[i].total += 200;
if (team[i].m1 > 85 && team[i].c2 == 'Y') team[i].total += 100;
if (team[i].m2 > 80 && team[i].c1 == 'Y') team[i].total += 85;
totals += team[i].total;
}
max = team[0].total; tmax = &team[0];
FOR(i,1,n) if (team[i].total > max)
{max = team[i].total ; tmax = &team[i]; }
cout << tmax -> name << endl
<< tmax -> total << '0' << endl
<< totals << '0' << endl;
totals = max = 0;
delete [] team;
}

B. c語言編程題 獎學金

#include <iostream>
#include <math>
using namespace std;
void printAward(int value1, int value2, int value3)
{
if(value1 >= 90 && value2 >= 90 && value3 >= 90)
{
cout<<"等級1";
}
else if(value1 >=80&& value2 >= 80 && value3 >= 80)
{
cout<<"等級2";
}
else
{
int minVal = min(min(value1, value2), min(value2, value3));
int maxVal = max(max(value1, value2), max(value2, value3));
int midVal = value1 + value2 + value3 - minVal - maxVal;
if(midVal >= 90 && minVal >= 70)
{
cout<<"等級2";
}
else
{
cout<<"無獎學金";
}
}
}

void main()
{
int value1, value2, value3;
cin>>value1>>value2>>value3;
printAward(value1, value2, value3);
}

C. C語言解答"誰拿了最多的獎學金"

能不能說詳細點啊,你的題目的意思沒怎麼看懂.

D. 獎學金評定問題c語言程序

#include<stdio.h>

#defineN8 //這里指學生人數,可以根據實際題目修改
#defineM3

voidExchange(intid[],intsum[],intscore[][M],inti,intj)
{
//互換學生i和j的成績,學號
inttemp;
intk;
temp=id[i];id[i]=id[j];id[j]=temp;
temp=sum[i];sum[i]=sum[j];sum[j]=temp;
for(k=0;k<M;k++)
{
temp=score[i][k];
score[i][k]=score[j][k];
score[j][k]=temp;
}
}

intmain()
{
intscore[N][M]={0}; //用於存放學生成績的數組
intid[N]={0}; //學號
intsum[N]={0}; //每位同學總分
//0號位:語文;1號位:數學; 2號位:英語
inti,j,k; //循環變數
for(i=0;i<N;i++)
{
scanf("%d",&id[i]); //輸入學號
for(j=0;j<M;j++)
{
scanf("%d",&score[i][j]);
sum[i]+=score[i][j];
}
}
for(i=0;i<N-1;i++)
{
k=i;
for(j=i+1;j<N;j++)
{
if(sum[j]>sum[k])
{
k=j;
}
}
if(k!=i)
{
Exchange(id,sum,score,k,i);
}
}
//進行總分相同的學生的成績重新排名
for(i=0;i<N-1;)
{
if(sum[i]!=sum[i+1])
{
i++;
}
else
{
if(score[i][0]<score[i+1][0]) //現在排名在後面的人語文成績高
{
Exchange(id,sum,score,i,i+1);
}
else
{
if(score[i][0]==score[i+1][0]) //語文成績相等
{
if(score[i][1]<score[i+1][1]) //後者數學成績高
{
Exchange(id,sum,score,i,i+1);
}
else
{
i++;
}
//如果數學再相等,那麼也不用交換了,由於總分相等
}
else
{
i++;
}
}
}
}
for(i=0;i<5;i++)
{
printf("%d%d ",id[i],sum[i]);
}


return0;
}

E. 誰拿了最多的獎學金 OJ wrong answer 。。為什麼啊。C語言

#include <stdio.h>
int main()
{
struct Student
{
char name[200];
int qc;//期末成績
int pc;//班級評定成績
char xb,xsh;//西部 學生會
int lw;//論文
int sum;
}a[1000];
int N,i,j,t,max;
long int add;
scanf("%d",&N);
// int i;
// long long int add;
add=0;
for(i=0;i<N;i++)
{
scanf("%s %d %d %c %c %d",&a[i].name,&a[i].qc,&a[i].pc,&a[i].xsh,&a[i].xb,&a[i].lw);
a[i].sum=0;
if(a[i].qc>80 && a[i].lw>0) a[i].sum+=8000;

if(a[i].qc>85 && a[i].pc>80) a[i].sum+=4000;

if(a[i].qc>90) a[i].sum+=2000;

if(a[i].qc>85 && a[i].xb=='Y') a[i].sum+=1000;

if(a[i].qc>80 && a[i].xsh=='Y') a[i].sum+=850;

add+=a[i].sum;
}
//int t;
t=0;
//int max;
max=a[0].sum;
//int j;
for(j=1;j<N;j++)
{
if(a[j].sum>max)
{
max=a[j].sum;
t=j;
}
}
printf("%s\n",a[t].name);
printf("%d\n",max);
printf("%lld\n",add);
return 0;
}
標准C必須在函數開頭定義變數

F. C語言 誰拿了最多的獎學金 高手看看哪錯了。

首先,memset(jxj,0,sizeof(jxj));這個東西,你自己看看,是個什麼東西呢?我看了半天實在沒有搞明白。說他是函數聲明吧,沒有參數類型,也不應該放在這;說他是函數調用吧,沒看到函數定義部分,說他是函數定義吧,那就沒有了該函數調用的代碼,更不應該在其後加分號。難道是系統函數?
再就是,那個gb和xb,我看你是定義成字元型二維數組吧,怎麼在下面的用法中出現了和單個字元的比較啊?gb[i]是一維的,內容是字元串,比較要用strcmp(str1,str2)函數的,是和字元串比較,不是單個字元。gb[i][j]才是一個字元。最後,你輸入的n,有可能越界的啊,要注意。

G. c語言 誰拿了最多獎學金

1 #include <iostream>
2 using namespace std;
3 struct Stu{
4
char name[20];
5
int west;
6
int qimo;//��ĩ
7
int bj;//
8
int gb; //
9
int art; //����
10
int mo;
11 };
12 Stu stu[130];
13 int n;
14 long long money=0;
15 int main()
16 {
17
freopen("scholar.in","r",stdin);
18
freopen("scholar.out","w",stdout);
19
memset(stu,0,sizeof(stu));
20
cin >> n;
21
for(int i=1;i<=n;i++){
22
char a,b;
23
cin >> stu[i].name >> stu[i].qimo >> stu[i].bj >> a >> b >> stu[i].art;
24
if (a=='Y')stu[i].gb=1;
25
if (b=='Y')stu[i].west=1;
26
}
27
int bigm=0,jn;
28
for(int i=1;i<=n;i++){
29
if (stu[i].qimo>80 && stu[i].art)stu[i].mo+=8000;
30
if (stu[i].qimo>85 && stu[i].bj>80)stu[i].mo+=4000;
31
if (stu[i].qimo>90) stu[i].mo+=2000;
32
if (stu[i].qimo>85 && stu[i].west)stu[i].mo+=1000;
33
if (stu[i].bj>80 && stu[i].gb)stu[i].mo+=850;
34
money+=stu[i].mo;
35
if (stu[i].mo>bigm)bigm=stu[i].mo,jn=i;
36
}
37
cout << stu[jn].name << endl;
38
cout << bigm << endl;
39
cout << money << endl;
40
41
return 0;
42 }
43

H. 用C解答"誰拿了最多的獎學金"

一道題這么長,強!