| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
#include <stdio.h> 
#include <math.h> 
 
int main() 
{ 
        long long i, j, k, l, num = 600851475143; 
        _Bool flag = 1; 
 
        for (i = 2, j = num/i; flag != 0; i++, j = num/i, flag = 1) 
        { 
                if (i * j == num) 
                { 
                        k = sqrt((double)j); 
                        for (l = 2; l <= k; l++) 
                        { 
                                if (j % l == 0) 
                                { 
                                        flag = 0; 
                                        break; 
                                } 
                        } 
                        if (flag) 
                        { 
                                break; 
                        } 
                } 
        } 
 
        printf("%lld\n", i); 
 
        return 0; 
} 
请问大家,这是C语言第一阶段测试题的第三题,求一个数的最大质数因子,这个代码为何不可以在vc2010上运行,已经将Bool flag 改成 int flag 了(vc2010是不能定义布尔类型的变量吗?),运行后出来黑色的框框没有任何输出反应。 
谢谢大家,第一次提问,不知道有啥要注意的。 
 本帖最后由 jackz007 于 2019-12-8 21:03 编辑 
         连 vc6 都支持 bool 型数据,更别说 vc2010 了。关键是源程序文件的扩展名必须是 ".cpp",不能是 ".c"。 
        在主程序的最后添加一条语句:
 
        为此,需要添加下面的头文件:
 
         这样,程序运行完,“黑色窗口” 不会立即消失,要等按下回车键后才会消失。  
 
 
 |   
 
 
 
 |