for i=1:n 后面的i:n就是给i赋新值啊,你要是想每次i=i-1, 那你倒着搞就行了 for i=n:1for语句中实现i的变化直接赋值就行,但到下次循环自动刷新。所以不明白你赋值想干嘛在一个循环中(比如i=10时) 判定结果无效,为什么还要留着这个i =10? 难道是想再无效一次?
在matlab不能对循环变量进行操作,这个和c语言是不一样的。你想想别的办法吧,你想要的是什么情况我有点没看明白!