猪猪虾 发表于 2020-6-20 17:06:33

c语言,第一阶段测试题,常量定义报错

本帖最后由 猪猪虾 于 2020-6-20 17:07 编辑

我不定义常量,直接给变量赋值,也错,难道是太大了,超出了数组索引范围
错误提示:unexpected identifier before numeric constant
目前code只是想求出范围内所有的素数

//编写一个程序,求解 600851475143 的最大质数因子是多少?
//每个合数都可以写成几个质数(素数)相乘的形式,这几个质数就都叫做这个合数的质数因子
//比如 13195 的质数因子有 5, 7, 13 和 29
#include <stdio.h>
#include <string.h>
#define NUM 600851475143
int main()
{
        long long int i,j = 0,su_shu = ,num;
       
        do
        {
                num++;
                //一个一个的进行判断
          for(i=2;i<=(num/2);i++)
          {
                  if ((num % i) == 0)
                  {
                          break;
                        }       
                        else if (i == (num/2))//判断是否循环一直进行到底,若到底了,说明中途没有Break
                        {
                                su_shu;       
                                j += 1;
                        }
                          
                }               
        }while(num <= (NUM /2);
        printf("%lld",su_shu)
    return 0;
}

永恒的蓝色梦想 发表于 2020-6-20 17:10:29

https://fishc.com.cn/forum.php?mod=viewthread&tid=60409

永恒的蓝色梦想 发表于 2020-6-20 17:13:04

大量低级错误。
IDE 用不起吗?//编写一个程序,求解 600851475143 的最大质数因子是多少?
//每个合数都可以写成几个质数(素数)相乘的形式,这几个质数就都叫做这个合数的质数因子
//比如 13195 的质数因子有 5, 7, 13 和 29
#include <stdio.h>
#include <string.h>
#define NUM 600851475143

int main()
{
    long long int i, j = 0, su_shu, num;

    do
    {
      num++;
      //一个一个的进行判断
      for (i = 2; i <= (num / 2); i++)
      {
            if ((num % i) == 0)
            {
                break;
            }
            else if (i == (num / 2))//判断是否循环一直进行到底,若到底了,说明中途没有Break
            {
                su_shu;
                j += 1;
            }

      }
    } while (num <= (NUM / 2));
    printf("%lld", su_shu);
    return 0;
}

永恒的蓝色梦想 发表于 2020-6-20 17:13:48

顺便一提,数组太大。

猪猪虾 发表于 2020-6-21 08:09:52

永恒的蓝色梦想 发表于 2020-6-20 17:13
顺便一提,数组太大。

啊,低级错误,,,我慢慢改,可是常量定义为什么报错

永恒的蓝色梦想 发表于 2020-6-21 08:16:51

猪猪虾 发表于 2020-6-21 08:09
啊,低级错误,,,我慢慢改,可是常量定义为什么报错

su_shu = 应该是 su_shu

405794672 发表于 2020-6-21 08:54:26

num没赋值 就敢num++。你说错不错。
页: [1]
查看完整版本: c语言,第一阶段测试题,常量定义报错