AGENS 发表于 2015-5-10 06:47:08

return的用法,还奇怪啊……

根据调试显示:加了return的话,没有执行后面的if语句,好奇怪啊。。。。代码如下……

#include <stdio.h>
#include <math.h>

void main()
{
        int a,i;
        printf("请输入一个数字:\n");
        scanf("%d",&a);
       
        for(i=2;i<a;i++)
        {
                if(a%i==0)
                {
                        break;
                }
                else
                {
                        return;
                }
        }

        if(i==a && a!=2)
        {
                printf("%d不是一个素数\n",a);
        }
        else
        {
                printf("%d是一个素数\n",a);
        }
       
}




迷雾少年 发表于 2015-5-10 07:24:48

return会直接结束这个函数 下面的代码就执行不了了

364904690 发表于 2015-5-10 09:20:33

{:1_1:}

AGENS 发表于 2015-5-10 22:06:14

迷雾少年 发表于 2015-5-10 07:24
return会直接结束这个函数 下面的代码就执行不了了

你的意思是说“return”会终结整个【#include <stdio.h>】里面的东西,对么?

小蠢猪 发表于 2015-5-11 17:14:26

突然,看到楼主的贴,return的另一种用法被发现了 . 

本人不在 发表于 2015-5-30 00:02:42

AGENS 发表于 2015-5-10 22:06
你的意思是说“return”会终结整个【#include 】里面的东西,对么?
对个毛线啊 return是跳出当前函数 call进去 当然得ret出去当前函数为main() 所以只是跳出它

怡静 发表于 2015-6-5 15:31:55

本人不在 发表于 2015-5-30 00:02
对个毛线啊 return是跳出当前函数 call进去 当然得ret出去当前函数为main() 所以只是跳出它

谢谢楼主细心解答。
页: [1]
查看完整版本: return的用法,还奇怪啊……