zoukankan      html  css  js  c++  java
  • Pascal学生管理

      1 program Project2;
      2 
      3 {$APPTYPE CONSOLE}
      4 
      5 uses
      6   SysUtils;
      7 
      8 const N=2;M=3;
      9 type
     10 
     11 date=record
     12    day:1..31;
     13    month:1..12;
     14    year:1970..1999;
     15    end;
     16 student=record
     17     number:string[5];
     18     name:string[8];
     19     birthday:date;
     20     score:array[1..M]of real;
     21     average:real;
     22     end;
     23 var
     24    stu:array[1..N] of student;
     25   counter,s,i,j,k:integer;
     26    t:real;
     27    a:student;
     28    temp:student;
     29    ch:string[8];
     30 begin
     31   { TODO -oUser -cConsole Main : Insert code here }
     32    for k:=1 to N do
     33    begin
     34    with a,birthday do
     35      begin
     36      write(k:2,'number:');readln(number);
     37      write(k:2,'name:');readln(name);
     38       write(k:2,'day:');readln(day);
     39       write(k:2,'month:');readln(month);
     40       write(k:2,'year:');readln(year);
     41        t:=0;
     42    for i:= 1 to M do
     43      begin
     44        write('score[',i,']=');read(a.score[i]);
     45        t:=t+a.score[i]
     46        end;
     47        readln;
     48        stu[k]:=a;
     49        stu[k].average:=t/M;
     50        end;
     51        end;
     52      for j:=1 to N do
     53      for k:=1 to N-j do
     54        if stu[k].average<stu[k+1].average then
     55          begin
     56            temp:=stu[k];
     57             stu[j]:=stu[k+1];
     58             stu[k+1]:=temp;
     59             end;
     60        Writeln('按平均分从高到低排');
     61        writeln('----------------------------------------------------------');
     62        write('num','':5,'name','':9,'mm/dd/yy':10,'':4);
     63        writeln('chinese','':2,'math','':2,'english','':2,'average');
     64        writeln('-----------------------------------------------------------');
     65        for j:=1 to N do
     66         with stu[j],birthday do
     67         begin
     68          write(number:5,name:9,'':8,month:2,'/',day:2,'/',year:4,' ');
     69          for i:= 1to M do write(score[i]:6:1);
     70          writeln(stu[j].average:10:1)
     71 
     72           end;
     73          for j:=1 to N do
     74             for k:=1 to N-j do
     75         if (stu[k].name)>(stu[k+1].name) then
     76          begin
     77            temp:=stu[k];
     78             stu[j]:=stu[k+1];
     79             stu[k+1]:=temp;
     80             end;
     81          Writeln('按学生姓名的字典顺序排');
     82        writeln('----------------------------------------------------------');
     83        write('num','':5,'name','':9,'mm/dd/yy':10,'':4);
     84        writeln('chinese','':2,'math','':2,'english','':2,'average');
     85        writeln('-----------------------------------------------------------');
     86           for j:=1 to N do
     87         with stu[j],birthday do
     88         begin
     89          write(number:5,name:9,'':8,month:2,'/',day:2,'/',year:4,' ');
     90          for i:= 1to M do write(score[i]:6:1);
     91          writeln(stu[j].average:10:1)
     92 
     93           end;
     94          writeln('按姓名查找学生信息');
     95          readln(ch);
     96          s:=0;
     97           for j:=1 to N do
     98         if (stu[j].name)=ch then
     99          begin
    100           writeln('----------------------------------------------------------');
    101            write('num','':5,'name','':9,'mm/dd/yy':10,'':4);
    102            writeln('chinese','':2,'math','':2,'english','':2,'average');
    103           writeln('-----------------------------------------------------------');
    104         with stu[j],birthday do
    105         begin
    106          write(number:5,name:9,'':8,month:2,'/',day:2,'/',year:4,' ');
    107          for i:= 1to M do write(score[i]:6:1);
    108          writeln(stu[j].average:10:1)
    109           end;
    110          end else  s:=s+1;
    111         if s=N then Writeln('没有找到该学生信息');
    112         writeln('将数学不及格的学生信息输出,并统计数学成绩不及格人数');
    113         counter:=0;
    114           for j:=1 to N do
    115         if (stu[j].score[2])<60  then
    116         begin
    117           counter:=counter+1;
    118           writeln('----------------------------------------------------------');
    119          write('num','':5,'name','':9,'mm/dd/yy':10,'':4);
    120           writeln('chinese','':2,'math','':2,'english','':2,'average');
    121          writeln('-----------------------------------------------------------');
    122           with stu[j],birthday do
    123           begin
    124          write(number:5,name:9,'':8,month:2,'/',day:2,'/',year:4,' ');
    125          for i:= 1to M do write(score[i]:6:1);
    126          writeln(stu[j].average:10:1)
    127           end;
    128          end;
    129           writeln('数学不及格人数:',counter);
    130          readln;
    131 end.
  • 相关阅读:
    倒排索引压缩
    记一次java内存溢出的解决过程
    [译]ES读写文档时shard-replication模型
    [转载]抓包工具Charles乱码解决办法
    Mac 快捷键整理(不定期更新)
    高效能人士执行的四原则(2017-12-15)
    scala sbt 添加国内镜像
    maven工程小红叉处理方法
    系统管理中 bash shell 脚本常用方法总结
    scala 2.11报错error: not found: type Application
  • 原文地址:https://www.cnblogs.com/lanjianhappy/p/6322142.html
Copyright © 2011-2022 走看看