回 帖 发 新 帖 刷新版面

主题:求助:不能读写些类型变量

program refilel(input,output,rfile);
type
student=record
num:integer;
name: packed array [1..15] of char;
sex:(male,female);
age:5..100;
score:real;
end;
var
rfile:file of student;
stud:student;
se:char;
i:integer;
begin
rewrite(rfile);
writeln('input,se,num,age,score,name');
for i:=1 to 40 do
    begin
    with stud do
         begin
              readln(se,num,age,score,name);
              if se='m'
                 then sex:=male
                 else sex:=female;
         end;
         write(rfile,stud);
    end;
end.

编译错误:readln(se,num,age,score,name);提示cannot read or write variables of this type 不能读写些类型变量 我不知如何处理?

回复列表 (共3个回复)

沙发

[em2]
你的 readln(se,num,age,score,name)
se 不在记录类型里!

板凳

(1)
name: packed array [1..15] of char;
现在已经没有压缩类型数组了。即是说,packed这个单词是废的。
建议把上面这句改为:name:string[15];
(2)
read和readln中,括号内的变量必须为同一类型。
把se,num,age,score,name这五个变量分成五个read语句吧!

3 楼

谢谢楼上的
问题应该出在packed array [1..15] of char这一行,我改了以后就行了,谢谢

我来回复

您尚未登录,请登录后再回复。点此登录或注册