wisestars 发表于 2020-10-28 10:37:12

已经对照答案了,但还是运行不了,不知道什么原因

题目是小甲鱼的带你学c带你飞里的第六课的课后作业,如题

乐乐学编程 发表于 2020-10-28 11:46:56

发你的代码出来呀,你发个图片,我通过其他手段,复制这个代码,出现错误,仍然不知道是不是你的错误呀

乐乐学编程 发表于 2020-10-28 14:44:03

这个题数字太大,我用DEV,并用 unsigned long long 类型输入输出,结果比实际的小很多,结果是:4294967295,我用 double 型输入输出,结果比正确的结果小一点。正确的结果是:舍罕王应该给予达依尔 1844 6744 0737 0955 1616 粒麦子,我的结果是:1844 6744 0737 0955 2000,所以没法发出来,看其他朋友给出什么样的程序来再说

风过无痕1989 发表于 2020-10-28 15:55:05

这个程序,等我系统升级后,再来回答你,数值太大了

xieglt 发表于 2020-10-28 16:00:35

本帖最后由 xieglt 于 2020-10-28 16:01 编辑

编译找不到库文件,试一下这么编译

gcc test.c(文件名) -ml -o test && ./test

wisestars 发表于 2020-10-29 13:04:57

乐乐学编程 发表于 2020-10-28 11:46
发你的代码出来呀,你发个图片,我通过其他手段,复制这个代码,出现错误,仍然不知道是不是你的错误呀

再敲一遍吗还是在哪里复制{:10_245:}

wisestars 发表于 2020-10-29 13:06:50

xieglt 发表于 2020-10-28 16:00
编译找不到库文件,试一下这么编译

gcc test.c(文件名) -ml -o test && ./test

显示错误了

wisestars 发表于 2020-10-29 13:13:31

?

jitianmoshen 发表于 2020-10-29 14:50:31

gcc -lm test2.c && ./a.out这样

乐乐学编程 发表于 2020-10-29 23:27:57

照抄一个程序给你,试试看

#include<stdio.h>
#include<math.h>
int main()
{
    unsigned long long a;
    unsigned long long b=1;
    unsigned long long c;
    unsigned long long sum = 0;

    for(a=0;a<64;a++)
    {
      sum = sum + b;
      b *= 2;             // 既然每一次是上一次的两倍,自乘可以免以 pow()函数的类型转换
    }
   
    c = sum/25000;
    printf("总共%llu颗麦子\n",sum);
    printf("总共%llu公斤麦子\n",c);
    return 0;
}
页: [1]
查看完整版本: 已经对照答案了,但还是运行不了,不知道什么原因