标题:函数参数的问题
只看楼主
qq312154421
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:124
专家分:120
注 册:2010-6-7
结帖率:86.36%
已结贴  问题点数:20 回复次数:4 
函数参数的问题
# include <stdio.h>

bool IsPrime(int val)
{
    int i;

        for (i=2; i<val; ++i)
        {
            if (val%i == 0)
                break;
        }
        if (i == val)
            return true;  //true表示真的意思
        else
            return false; //false表示假的意思
}

int main()
{
    int m;

//    scanf("%d", &m);

    if ( IsPrime( scanf("%d", &m) ) )
//如果我把scanf写到这里来为什么结果就不对了呢
        printf("Yes\n");

    return 0;
}
搜索更多相关主题的帖子: include return false 
2012-01-04 04:22
qq312154421
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:124
专家分:120
注 册:2010-6-7
得分:0 
   我是输入个5   前面没写到那里面去结果是Yes   改了之后就什么都不输出了

勤奋不止,自强不息。
2012-01-04 04:24
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:7 
你以为scanf()返回m,翻翻书和资料看自己的猜想对不对再写好么?

授人以渔,不授人以鱼。
2012-01-04 04:49
chanbo
Rank: 2
来 自:陕西咸阳
等 级:论坛游民
帖 子:38
专家分:74
注 册:2011-11-26
得分:7 
scanf()的返回值是它所成功读入的数据的项数(是int型),并不是它所读入的数。scanf("%d%d",&a,&b),如果成功读入a和b则返回2,如果只成功读入a则返回1,若没有成功读入任何值则返回EOF。
2012-01-04 08:49
hengde_li
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:131
专家分:178
注 册:2010-1-15
得分:7 
3楼正确,要注意每个函数的返回值。
2012-01-04 09:11



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-359112-1-1.html




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

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