我在做一个题大意是输入一批学生的学号,姓名,分数,存储于一个一维数组中,然后再按分数降序输出(用记录类型存储数据,并将其作为数组的元素类型)
program Project2;{$APPTYPE CONSOLE}uses
SysUtils;
type Tstudent = record //定义记录类型
ID:string[10];
name:string[8];
grade:integer;
end;
var Txuesheng:array of Tstudent;//定义数组
var i,x:integer;
var a:string[10];b:string[8];c:integer;
var p:Tstudent;
function luru(n:integer):integer;
begin
writeln('请按顺序输入准考证号,考生姓名,考生成绩:'); //输入内容 但是我不知道怎么写了
readln(p.ID,p.name,p.grade); //这句是我写的但是我用DELPHI调试有错
end;
begin
writeln('请输入需要录入学生数:');
read(x);
SetLength(Txuesheng,x);
for i:=(Low(Txuesheng)+1) downto High(Txuesheng) do
luru(x);
write(p.ID,p.name,p.grade);
readln;
end.问下大家怎么输入啊? ~~~在线等
program Project2;{$APPTYPE CONSOLE}uses
SysUtils;
type Tstudent = record //定义记录类型
ID:string[10];
name:string[8];
grade:integer;
end;
var Txuesheng:array of Tstudent;//定义数组
var i,x:integer;
var a:string[10];b:string[8];c:integer;
var p:Tstudent;
function luru(n:integer):integer;
begin
writeln('请按顺序输入准考证号,考生姓名,考生成绩:'); //输入内容 但是我不知道怎么写了
readln(p.ID,p.name,p.grade); //这句是我写的但是我用DELPHI调试有错
end;
begin
writeln('请输入需要录入学生数:');
read(x);
SetLength(Txuesheng,x);
for i:=(Low(Txuesheng)+1) downto High(Txuesheng) do
luru(x);
write(p.ID,p.name,p.grade);
readln;
end.问下大家怎么输入啊? ~~~在线等
readln(p.ID);
readln(p.name);
readln(p.grade);
WriteLn('准考证号:'+p.id);
WriteLn('考生姓名:'+p.name);
WriteLn('考生成绩:'+p.grade);
readln;
或者使用固定的分隔符隔开每项值,然后分析一下
begin
writeln('请按顺序输入准考证号,考生姓名,考生成绩:');
for j:=1 to x do
begin
readln(Txuesheng[j].ID);
readln(Txuesheng[j].name);
readln(Txuesheng[j].grade); // 在这会报错什么意思啊?????????????????
end;end;
begin
writeln('请输入需要录入学生数:');
read(x);
SetLength(Txuesheng,x);
for i:=(Low(Txuesheng)+1) downto High(Txuesheng) do
luru(x);
write('准考证号'+Txuesheng[j].ID);write('考生姓名',Txuesheng[j].name);write('考生成绩',Txuesheng[j].grade);
readln;
end.
我把程序改成这样了