神论教主 发表于 2014-1-4 21:51:30

求解释!!!

为什么运行C语言的程序会一闪而过,看不到结果?? 这个程序怎样改在运行时可以看结果,不会闪过??求解

牡丹花下死做鬼 发表于 2014-1-4 22:03:35

纳尼vc++6.0 居然会一闪而过#include<stdio.h>
#define bool int
#define true 1
#define false 0
bool leap(int i);
int main()
{
        int i;
        printf("请输入一个年份:");
        scanf("%d",&i);
        if(leap(i))
        {
                printf("是闰年!\n");
        }
        else
        {
                printf("不是闰年!\n");
        }

        return 0;
}
bool leap(int i)
{
        if(i%4 == 0 && i%100 != 100 || i%400 == 0)
                return true;
        else
                return false;
}vc++6.0亲测没问题

神论教主 发表于 2014-1-4 22:24:54

是啊!你这个要高级点,以我目前的水平还看不懂!加油!!!谢谢!!!

yuqiuwangzi 发表于 2014-1-4 22:25:38

VC++6.0不会有这个问题的吧,实在不行在return 0前面加上getchar();

神论教主 发表于 2014-1-4 22:25:41

牡丹花下死做鬼 发表于 2014-1-4 22:03 static/image/common/back.gif
纳尼vc++6.0 居然会一闪而过vc++6.0亲测没问题

是啊!你这个要高级点,以我目前的水平还看不懂!加油!!!谢谢!!!

神论教主 发表于 2014-1-4 22:27:54

牡丹花下死做鬼 发表于 2014-1-4 22:03 static/image/common/back.gif
纳尼vc++6.0 居然会一闪而过vc++6.0亲测没问题

在文件夹中找到后 运行会闪过这是为是么??

牡丹花下死做鬼 发表于 2014-1-4 22:32:47

神论教主 发表于 2014-1-4 22:27 static/image/common/back.gif
在文件夹中找到后 运行会闪过这是为是么??

那是的因为没有中断 就是 pause加上就行了#include<stdio.h>
#include<windows.h>
#define bool int
#define true 1
#define false 0
bool leap(int i);
int main()
{
        int i;
        printf("请输入一个年份:");
        scanf("%d",&i);
        if(leap(i))
        {
                printf("是闰年!\n");
        }
        else
        {
                printf("不是闰年!\n");
        }
        system("pause");

        return 0;
}
bool leap(int i)
{
        if(i%4 == 0 && i%100 != 100 || i%400 == 0)
                return true;
        else
                return false;
}

神论教主 发表于 2014-1-4 22:38:36

牡丹花下死做鬼 发表于 2014-1-4 22:03 static/image/common/back.gif
纳尼vc++6.0 居然会一闪而过vc++6.0亲测没问题

i%4 == 0 && i%100!= 100 || i%400 ==0 中 || i%400 == 0 好像没有意义,而 i%100!= 100 又是什么意思呢

神论教主 发表于 2014-1-4 22:42:37

yuqiuwangzi 发表于 2014-1-4 22:25 static/image/common/back.gif
VC++6.0不会有这个问题的吧,实在不行在return 0前面加上getchar();

在编译环境里运行不会闪, 在文件夹中找到后 运行会闪过这是为是么??

神论教主 发表于 2014-1-4 22:45:33

牡丹花下死做鬼 发表于 2014-1-4 22:32 static/image/common/back.gif
那是的因为没有中断 就是 pause加上就行了

哦我是刚学习,还有很多不懂,以后应该会知道了   谢谢啊

牡丹花下死做鬼 发表于 2014-1-4 22:53:27

神论教主 发表于 2014-1-4 22:38 static/image/common/back.gif
i%4 == 0 && i%100!= 100 || i%400 ==0 中 || i%400 == 0 好像没有意义,而 i%100!= 100 又是什么意思呢 ...

i%4 == 0 && i%100!= 100 || i%400 ==0

先判断 i%4就是能否被四整除 如果不能被四整除肯定不是闰年
再判断i%100!=100就是看是不是不是100的倍数如果不是 那就是闰年 因为 i%4 == 0 && i%100!= 100 为真后面是 || 所以最后那个就不用管了 如果是100的倍数 i%4 == 0 && i%100!= 100 为假 很明显 只要在最后判断下 i%400 ==0是不是400的倍数即可

牡丹花下死做鬼 发表于 2014-1-4 22:54:35

神论教主 发表于 2014-1-4 22:42 static/image/common/back.gif
在编译环境里运行不会闪, 在文件夹中找到后 运行会闪过这是为是么??

编译器会自动加上中断 单文件夹里找到的不是基于编译器的所以你没写中断代码就不会中断 现在真心不用纠结这个 想知道学甲鱼的汇编去吧

神释 发表于 2014-1-4 22:58:27

我觉得楼上的已解释的很清楚了,不用我多说了

神论教主 发表于 2014-1-4 23:06:08

牡丹花下死做鬼 发表于 2014-1-4 22:54 static/image/common/back.gif
编译器会自动加上中断 单文件夹里找到的不是基于编译器的所以你没写中断代码就不会中断 现在真心不用纠结 ...

恩,谢谢 现在在学小甲鱼的C语言学完后 就学汇编

神论教主 发表于 2014-1-4 23:07:07

神释 发表于 2014-1-4 22:58 static/image/common/back.gif
我觉得楼上的已解释的很清楚了,不用我多说了

谢谢!!!!!!!!

神论教主 发表于 2014-1-5 20:08:04

ryan0632 发表于 2014-1-5 13:06 static/image/common/back.gif
cmd运行

cmd是???
页: [1]
查看完整版本: 求解释!!!