| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 887 人关注过本帖
标题:数组的小程序看不懂
只看楼主 加入收藏
xllac
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-2-2
收藏
 问题点数:0 回复次数:12 
数组的小程序看不懂
  大家好 刚开始学习c语言 有一个小程序看不懂 请大家帮我看看 谢谢大家      
main()
{
    int num[10]={1,32,14,56,74,3,56,6,9,12},x,i;
    printf("input x:");
    scanf("%d",&x);
    for(i=0;i<10;i++)
        if(num[i]==x)break;
    if(i==10)   (就是这里这个i==10,10是怎么来的呢?)
        printf("NO");
    else
        printf("YES %d",i);
        getch();
}
搜索更多相关主题的帖子: c语言 
2015-02-02 12:37
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
收藏
得分:0 
你写程序首先要了解这个程序的功能和你要干什么,你的目的是什么

一片落叶掉进了回忆的流年。
2015-02-02 12:40
xllac
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-2-2
收藏
得分:0 
回复 2楼 诸葛欧阳
您好  就是  输入一个数 然后判断数组中是否有这个数 我就是不明白那个(i==10)中10是怎么来的呢?
2015-02-02 12:47
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
你看那個for()循環,它的計數器i試圖從0到9變化,如果在中途被break退出,那麽i是不可能被遞增到10的,所以在循環結束後,如果檢查到i真的變成了10,那麽就表示沒有被break出來,即循環中if()從來沒有成功過。

授人以渔,不授人以鱼。
2015-02-02 13:24
xllac
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-2-2
收藏
得分:0 
回复 4楼 TonyDeng
您好  我知道这个for循环是从0到9 可他没有10    (i==10)中的10 是不是指for共循环10次 的10
2015-02-02 13:30
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
i是遞增到10才滿足i<10條件結束循環的!
收到的鲜花
  • xllac2015-02-10 15:25 送鲜花  3朵   附言:谢谢您

授人以渔,不授人以鱼。
2015-02-02 13:32
xllac
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-2-2
收藏
得分:0 
回复 6楼 TonyDeng
  我明白了 假如 i==10 不满足(i<10)跳出循环   这时的i就等于10了 就是(i==10) 对吧!!! 谢谢您了   没有好好看循环那里 弄了半天也没弄明白
2015-02-02 13:49
执笔画江山
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:265
专家分:1010
注 册:2015-1-13
收藏
得分:0 
你先搞清楚 i++后,i的值是几。你的问题就迎刃而解了。
收到的鲜花
  • xllac2015-02-10 15:23 送鲜花  3朵   附言:谢谢您

授人以鱼,不如授人以渔
2015-02-02 13:51
xllac
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-2-2
收藏
得分:0 
回复 8楼 执笔画江山
嗯 i++到最后是10 谢谢您
2015-02-02 13:55
code力力
Rank: 5Rank: 5
来 自:宜昌
等 级:职业侠客
威 望:2
帖 子:215
专家分:338
注 册:2015-1-12
收藏
得分:0 
if(i==10)   (就是这里这个i==10,10是怎么来的呢?)
你想想这个什么时候会成立?
是不是当循环没有被break的时候i==10呢?那么当循环不被break说明输入的X==mun[i]不成立。
所以:这个程序的意思是:输入一个数X,如果数组中有X,就输出YES 否则输出NO
你明白后可以再去看看判断一个数是不是素数的程序,算法是类似的。
收到的鲜花
  • xllac2015-02-10 15:26 送鲜花  3朵   附言:谢谢您

你醒了?快起来敲代码!!
2015-02-03 17:29
快速回复:数组的小程序看不懂
数据加载中...
 
   



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

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