1、最后缺少一个end;
2、这句输出没什么意义:disp A(i)=A(j);
3、这句完全多余:else continue
给你写了一段代码供参考:
% 生成测试数据
A = [randperm(19) randperm(19)+1]
c = 0; % 计数器
for i=1:19
for j=20:38
if A(i)==A(j)
c = c + 1;
fprintf('%2i: A(%i)=A(%i)\n',c,i,j)
end
end
end
输出(由于数据随机生成,每次运行得到的结果不同):
A =
Columns 1 through 10
10 4 17 15 14 3 2 11 1 8
Columns 11 through 20
9 5 6 12 7 18 16 13 19 19
Columns 21 through 30
4 5 18 10 9 7 2 3 14 13
Columns 31 through 38
15 16 12 20 17 6 8 11
1: A(1)=A(24)
2: A(2)=A(21)
3: A(3)=A(35)
4: A(4)=A(31)
5: A(5)=A(29)
6: A(6)=A(28)
7: A(7)=A(27)
8: A(8)=A(38)
9: A(10)=A(37)
10: A(11)=A(25)
11: A(12)=A(22)
12: A(13)=A(36)
13: A(14)=A(33)
14: A(15)=A(26)
15: A(16)=A(23)
16: A(17)=A(32)
17: A(18)=A(30)
18: A(19)=A(20)