Pascal 帕斯卡:201错误

Pascal 帕斯卡:201错误,pascal,Pascal,我正在为学生信息(家庭作业)制作一个存储数据的程序 所以我做了这个程序,但是我得到了一个错误代码! 另外,我也不能将数据存储到txt文件中。是不是也因为这个错误? 我在互联网上检查201错误,但我不知道如何修复它 我的数组变为6时出现此错误。。。。 这是我的节目 program arrary1; var studentinfo:text; i,a:integer; tf:boolean; name:array[1..10] of string[25]; cl

我正在为学生信息(家庭作业)制作一个存储数据的程序 所以我做了这个程序,但是我得到了一个错误代码! 另外,我也不能将数据存储到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.
程序阵列1;
变量
学生信息:文本;
i、 a:整数;
tf:布尔型;
名称:字符串[25]的数组[1..10];
类号:整数的数组[1..10];
性别:字符数组[1..10];
程序输入数据;
开始
i:=1;
重复
写('输入学生姓名:');
readln(名称[i]);
如果名称[i]“结束”
然后
开始
写('输入学生的班级编号:');
readln(类别号[i]);
写('输入学生的性别:');
readln(性别[i]);
i:=i+1;
结束
否则开始
出口
结束;
直到i=11;
结束;
程序显示数据;
开始
对于a:=1到i-1 do
开始
书面(姓名[a],'',类别号[a],'',性别[a]);
i:=i+1;
结束;
结束;
程序存储数据;
开始
对于a:=1到i-1 do
开始
赋值(studentinfo,'G:\pascal\studentdata.txt');
重写(学生信息);
书面形式(学生信息,姓名[a],'',班级编号[a],'',性别[a]);
关闭(学生信息);
i:=i+1;
结束;
结束;
开始
输入数据;
显示数据;
存储数据;
结束。
检查
name[i]
是否允许用户端到端输入程序
谢谢你的回答

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

我认为您的internet搜索不是很彻底。谷歌搜索“pascal runtime error 201”很快就会得到许多可能的答案。这意味着您的数组索引超出范围。另外,我也不能将数据存储到txt文件中。是不是也因为这个错误?获取运行时错误是一个很好的指标,表明您的程序不会产生您想要的结果。请始终使用-Criot编译作业,以启用最重要的检查