zoukankan      html  css  js  c++  java
  • 谁拿了最多奖学金pascal程序

    题意

    找出奖学金最多的学生


    分析

    这题就是很简单的字符串处理,细心一点就好。

    先把每一个学生的奖学金算出来,再排序,如果有两位或两位以上的学生获得的奖金最多,输出他们之中在输入文件中出现最早的学生的姓名。


    var
    n,tj,i,gb,xb,lw,q,b,j:longint;
    m:array[0..100]of string;
    t,p:array[0..100]of longint;
    s:string;
    begin
        readln(n);tj:=0;
        for i:=1 to n do
        begin
            readln(s);
            m[i]:=copy(s,1,pos(' ',s)-1);
            delete(s,1,pos(' ',s));
            val(copy(s,1,pos(' ',s)-1),q);
            delete(s,1,pos(' ',s));
            val(copy(s,1,pos(' ',s)-1),b);
            delete(s,1,pos(' ',s));
            if copy(s,1,pos(' ',s)-1)='Y' then gb:=1 else gb:=0;
            delete(s,1,pos(' ',s));
            if copy(s,1,pos(' ',s)-1)='Y' then xb:=1 else xb:=0;
            delete(s,1,pos(' ',s));
            lw:=ord(s[1])-ord('0');
            if (q>80)and(lw>=1) then
            begin
                tj:=tj+8000;
                t[i]:=t[i]+8000;
            end;
            if (q>85)and(b>80) then
            begin
                tj:=tj+4000;
                t[i]:=t[i]+4000;
            end;
            if (q>90) then
            begin
                tj:=tj+2000;
                t[i]:=t[i]+2000;
            end;
            if (xb=1)and(q>85) then
            begin
                tj:=tj+1000;
                t[i]:=t[i]+1000;
            end;
            if (gb=1)and(b>80) then
            begin
                tj:=tj+850;
                t[i]:=t[i]+850;
            end;
            p[i]:=i;
        end;
        for i:=1 to n-1 do
        begin
            for j:=i+1 to n do
            if (t[i]<t[j])or(t[i]=t[j])and(p[j]<p[i]) then
            begin
                t[0]:=t[i];t[i]:=t[j];t[j]:=t[0];
                p[0]:=p[i];p[i]:=p[j];p[j]:=p[0];
                m[0]:=m[i];m[i]:=m[j];m[j]:=m[0];
            end;
        end;
        writeln(m[1]);
        writeln(t[1]);
        write(tj);
    end.

  • 相关阅读:
    浅谈JavaScript中this指向的⼏种情况
    JavaScript、html简单的级联操作。
    异常处理中throws和throw的区别?
    java异常处理try-catch-finally的执行过程?
    什么是内连接、外连接、交叉连接(笛卡尔积)?
    主键和外键的区别
    集合和数组的比较(为什么要引入集合)?
    Java中对比单继承与多继承的优劣,以及java的解决方案
    数据库
    数据库集中控制的优势
  • 原文地址:https://www.cnblogs.com/YYC-0304/p/9500210.html
Copyright © 2011-2022 走看看