数组问题

kingslead 2004-03-26 07:24:20
有一个数组,检验其中是否有不合格的数字,若不合格则去掉,然后再检验,若仍有不合格数字,则再删,当没有不合格数字时,向下执行,想问怎么能使程序从上面的循环跳到后面去?
...全文
45 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
fengfeng1982 2004-03-27
  • 打赏
  • 举报
回复
尽量不要用goto,那样会使程序的可读性降低
basen99 2004-03-27
  • 打赏
  • 举报
回复
我晕这可以在老谭的书上看到的
------傲笑红尘
dodofcboy 2004-03-27
  • 打赏
  • 举报
回复
continue break
黄有才 2004-03-26
  • 打赏
  • 举报
回复
for (--------)
for (--------)
黄有才 2004-03-26
  • 打赏
  • 举报
回复
方便程序就是了...用goto 也好啊...
独孤过儿 2004-03-26
  • 打赏
  • 举报
回复
我看大家是没有看懂题目吧。楼主的意思是是对数组内的每一个元素进行核对,所以从循环内跳出的

语句不应该是 break; 而应该是 continue ;

另外,强烈反对应用goto语句,除非是利用goto可以极大的取得方便,例如从多层循环的内部跳

出,否则坚决不用。
jzl_suntek 2004-03-26
  • 打赏
  • 举报
回复
更正一下
int n = N;
int num[N] = {/*数组的值*/};
for(int i=0,j=0;i<n;i++,j++)
{
if(!isRight(nmu[i]))
{
j++;
n--;
}
num[i]=nmu[j];
}
jzl_suntek 2004-03-26
  • 打赏
  • 举报
回复
int n = N;
int num[N] = {/*数组的值*/};
for(int i=0,j=0;i<n;i++,j++)
{
if(!isRight(nmu[i]))
j++;
num[i]=nmu[j];
}
Darkay_Lee 2004-03-26
  • 打赏
  • 举报
回复
NamelessOnePS(--NamelessOne--) 正中!
NamelessOnePS 2004-03-26
  • 打赏
  • 举报
回复
数据是否合格是否与前面或后面的数据有关系?
1.如果没有关系,发现不合法的数据删除后,继续往后扫描,一遍就可以了。
2.如果有关系,发现不合法的数据后,再重头扫描;如果扫描到最后一个数据,
还没有发现不合法的,就结束。
pos = 0;
while(pos <= last)
{
if(!IsValid(pos))
{
delete ...
pos = 0;
}
else
pos ++;
}
黄有才 2004-03-26
  • 打赏
  • 举报
回复
说得不清啊!!!
跳出本层循环用 break;
或用一下goto;
yiminggw 2004-03-26
  • 打赏
  • 举报
回复
li zi?
angelo23 2004-03-26
  • 打赏
  • 举报
回复
不解~实在不行你就设一个int型的flag,把flag != 0作为循环条件之一,没有不合格数字了就把flag设成0。不过应该不需要这样就能搞定的呀
vlucky 2004-03-26
  • 打赏
  • 举报
回复
if(condition)

break;
HitXU 2004-03-26
  • 打赏
  • 举报
回复
使循环条件不成立不就从循环中出来了吗?
wdy0725 2004-03-26
  • 打赏
  • 举报
回复
你什么意思,给一个实例.

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧