| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 380 人关注过本帖
标题:if语句放在for里为什么不行?
只看楼主 加入收藏
impaler
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-6-12
结帖率:40%
收藏
已结贴  问题点数:10 回复次数:3 
if语句放在for里为什么不行?
#include<stdio.h>

int find(int array[],int start,int finish,int whattofind) {
    enum{NOT_FIND,FIND};
    int result=NOT_FIND;
    int i;
    for(i=start;i<finish&&array[i]==whattofind;i++)
    {   
    //    if(array[i]==whattofind){
            result=FIND;
            break;
        //}
    }
    return result;
   
}
void distinct(int a[],int size){
int i;
    printf("%d\n",a[0]);

    for(i=1;i<size;i++)
    {
        if(!find(a,0,i-1,a[i]))
            printf("%d\n",a[i]);
    }
}
int main(){
    int a[]={0,9,10,34,89,99,9};
    printf("%d\n",find(a,0,6,9));
//    distinct(a,7);
    while(1);
}
搜索更多相关主题的帖子: include return result start 
2014-03-29 10:18
ying8501
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:6
帖 子:1092
专家分:1446
注 册:2008-11-24
收藏
得分:10 
1)你程序的思路太乱了。
2)至少你所标的红色部位要去掉:
for(i=start;i<finish&&array[i]==whattofind;i++)
-->  for(i=start;i<finish;i++)

2014-03-29 11:04
ying8501
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:6
帖 子:1092
专家分:1446
注 册:2008-11-24
收藏
得分:0 
#include<stdio.h>

int find(int array[],int start,int finish,int whattofind) {
   
    int result=-1;    //----找到返回下标i,找不到返回-1
    int i;
    for(i=start; i<finish;i++)
    {   
      if(array[i]==whattofind){
            return i;
      }
    }
    return result;
   
}

int main(){
    int a[]={0,9,10,34,89,99,9};
    int k;
    k=find(a,0,6,9);
    if(k!=-1)printf("a[%d]=%d\n",k,a[k]);
    else   printf("数据没找到\n");
    return 0;
}

[ 本帖最后由 ying8501 于 2014-3-29 11:16 编辑 ]
2014-03-29 11:12
ying8501
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:6
帖 子:1092
专家分:1446
注 册:2008-11-24
收藏
得分:0 
不知道你程序中函数void distinct(int a[],int size)的目的,能说一下吗?
2014-03-29 11:14
快速回复:if语句放在for里为什么不行?
数据加载中...
 
   



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

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