帕斯卡:201错误

时间:2016-05-18 13:58:32

标签: pascal

我正在制作一个存储学生信息数据的程序(家庭作业) 所以....我做了这个程序,但我得到一个错误201代码! 此外,我也无法将数据存储到txt文件。是因为错误呢? 我在互联网上检查201错误,但我不知道解决这个问题 当我的阵列进入6时我得到了这个错误.... 这是我的计划

    program arrary1;
var
   studentinfo:text;
   i,a:integer;
   tf:boolean;
   name:array[1..10] of string[25];
   classno:array[1..10] of integer;
   gender:array[1..10] of char;
procedure inputdata;
begin
   i:=1;
   repeat
      write('Enter the name of student: ');
      readln(name[i]);
      if name[i]<>'END'
      then
      begin
         write('Enter the class number of student: ');
         readln(classno[i]);
         write('Enter the gender of student: ');
         readln(gender[i]);
         i:=i+1;
         end
      else begin
      exit;
      end;
      until i=11;
      end;

procedure displaydata;
begin
   for a:= 1 to i-1 do
   begin
   writeln(name[a],' ',classno[a],' ',gender[a]);
   i:=i+1;
   end;
   end;

procedure storedata;
begin
   for a:= 1 to i-1 do
   begin
   assign(studentinfo, 'G:\pascal\studentdata.txt');
   rewrite(studentinfo);
   writeln(studentinfo,name[a],' ',classno[a],' ',gender[a]);
   close(studentinfo);
   i:=i+1;
   end;
   end;
begin
   inputdata;
   displaydata;
   storedata;
end.

检查name[i]是否让用户输入END以结束项目 TY FOR FORSWERING !!!!

1 个答案:

答案 0 :(得分:0)

在过程displaydata中,您将全局变量i从11增加到21,下一个循环a:=1 to i-1违反了限制。