matlab中的死循环

while 1
c=input('please input a character: ','s');
if abs(c)==13
break;
end
end

如上述循环,一旦在命令窗中执行之后就无法停下来,如何退出循环体呢?

你的问题是出在input的参数上,你在里面有一个's'参数,表示,输出的c是字符型的。所以要让其能正确退出,有两种方法:
1)去掉's'参数
while 1
c=input('please input a character: ');
if abs(c)==13
break;
end
end

2)更改判断条件
while 1
c=input('please input a character: ','s');
if c=='13'
break;
end
end
这两种方法都能得出想得到的结果
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-11-19
楼上说得对‘
或者

while 1
c=input('please input a character: ','s');
c=str2num(c);
if abs(c)==13
break;
end
end
第2个回答  2012-11-17
ctrl+C

matlab怎么退出死循环
在MATLAB中遇到死循环时,可以尝试几种方法来解决这个问题。首先,您可以尝试同时按下Ctrl+C键来中断当前的无限循环。这是一个相对简单且直接的方法。如果这种方法不奏效,您可以选择更直接的方式,即关闭MATLAB软件。这通常会立即终止当前的运行程序。另一种方法是采用强制退出的方式。具体操作为按下Ctrl+...

MATLAB如何退出死循环
1、首先先自己编一段死循环的程序.2、当出现死循环的时候,会发现左下角出现了一个busy,表示程序一直在运行.3、第一种方法就是可以同时按ctrl+c键直接跳出死循环.4、第二种方法最简单粗暴,直接关闭软件就行了.5、第三种方法跟第二种类似,就是强制退出,ctrl+alt+. 进入任务管理器,选择上然后结束...

matlab中的如何跳出while死循环
1、首先打开电脑和matlab软件,新建一个m文件,并在m文件里面输入一个死循环的代码,如下所示,for循环里面的inf是表示一个无穷大数的意思。2、然后点击matlab上面的绿色run按钮,可以看到Command Window里面一直处于运行busy状态,也就是死循环的状态。3、此时退出该死循环的第一个方法:就是把光标定位到...

如何检查matlab中出现的死循环
2、while语句里面一般都要加迭代次数限制;如果长时间程序不能运行结束,可以在主界面用ctrl+C结束当前运行程序。

求解matlab死循环,帮忙看下程序
如果是死循环,也就是if abs(n)<1000 z(i)=s;loop=0;break 条件始终不满足啊。不过loop = 0这一句可以删去。建议你把条件放宽点比如<10000什么的试试 n=sum(qc)*600*300\/300+(qs*As1);你乘300又除300,图什么??每次输出你的n看看都是多少 ...

matlab怎么跳出死循环
matlab跳出死循环的解决方法:第一种解决方法:同时按住快捷键Ctrl-C,这样能够终止死循环,这种方法并不是都有效,因为某些程序占据内存过高,不容易退出,这时我们采取第二种方法;第二种解决方法:关闭MATLAB软件,这种方法的缺点是不能保存MATLAB的中间结果;第三解决方法:强制关闭MATLAB软件,进入任务管理...

matlab while死循环
clear n=input('输入成绩n=');m=60;while 1 if n>m && n<=100 fprintf('及格\\n');elseif n<m && n>0 fprintf('不及格\\n');else break;end n=input('输入成绩n=');end 我猜楼主是想实现这样的功能吧,while死循环是ctrl+c就可以退出来 ...

matlab中的如何结束while死循环
在matlab中,如没有正确使用好while条件循环语句,很容易出现死循环现象。预防死循环的对策有:1、在while条件循环语句中,设置判断语句,当条件不满足时,直接执行 break 中断语句,跳出循环;2、在while条件循环语句中,设置判断语句,当条件不满足时,直接执行 return 中断语句,中断执行该程序,跳回到主...

matlab中的如何跳出while死循环
如果程序的条件设置不合理或错误,就会导致死循环,当有死循环时,就要设置一个条件判断,如超时,超次数,跳出这个列循环。但是,方法是有针对性的,程序不同,会有不同的方法。如:limit = 0.8;s = 0;while 1 tmp = rand;if tmp > limit break end s = s + tmp;end ...

matlab中的死循环
你的问题是出在input的参数上,你在里面有一个's'参数,表示,输出的c是字符型的。所以要让其能正确退出,有两种方法:1)去掉's'参数 while 1 c=input('please input a character: ');if abs(c)==13 break;end end 2)更改判断条件 while 1 c=input('please input a character: ','s...

相似回答
大家正在搜