| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 412 人关注过本帖
标题:[求助]为什么会出现死循环
取消只看楼主 加入收藏
lzf0112
Rank: 1
等 级:新手上路
帖 子:244
专家分:0
注 册:2006-4-9
收藏
 问题点数:0 回复次数:3 
[求助]为什么会出现死循环
当要求输入一个数学表达式时,判断其表达式是否符合要求,下列为什么会出现死循环呢?望指教~~~~
char p[max];
cin>>p;
i=strlen(p);
for(j=0;j<=i;j++)
{
if((p[j]>='0'&&p[j]<='9')||((p[j]=='+')||(p[j]=='-')||(p[j]=='*')||(p[j]=='/')||(p[j]=='(')||(p[j]=')')))
m=0;
else
{
m=1;
break;
}
}
2006-07-04 08:34
lzf0112
Rank: 1
等 级:新手上路
帖 子:244
专家分:0
注 册:2006-4-9
收藏
得分:0 

斑竹帮忙看一下啊!!!

2006-07-04 09:27
lzf0112
Rank: 1
等 级:新手上路
帖 子:244
专家分:0
注 册:2006-4-9
收藏
得分:0 
比较完成的代码是这样的,有一运行输入表达式以后就没有反应啊,请斑竹指点
int i,j=0,m=0;
char p[max];
cin>>p;
l:i=strlen(p);
for(j=0;j<=i;j++)
{
if((p[j]>='0'&&p[j]<='9')||(p[j]=='.')||((p[j]=='+')||(p[j]=='-')||(p[j]=='*')||(p[j]=='/')||(p[j]=='(')||(p[j]=')')))
m=0;
else
{
m=1;
break;
}
}
if(m==1)
{
cout<<"输入的表达式有错,请重新输入:";
cin>>p;
goto l;
}
else //调用别的函数
2006-07-04 09:45
lzf0112
Rank: 1
等 级:新手上路
帖 子:244
专家分:0
注 册:2006-4-9
收藏
得分:0 

谢谢斑竹指点,可以啦,
我设置的max是32767是整型中最大的数啊,我输入的一般不会超过那个范围啊
谢谢!!!!

2006-07-04 10:14
快速回复:[求助]为什么会出现死循环
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015888 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved