跟着课程走的,但结果不对
我更着课程学的,但结果不对,怎么回事。#include <stdio.h>
#include <math.h>
int main()
{
unsigned long long sum = 0;
unsigned long long temp;
unsigned long long weight;
int i;
for (i=0; i < 64; i++)
{
temp = pow(2,i);
sum = sum + temp;
}
weight = sum / 25000;
printf("舍罕王应该给予达依尔%11u粒麦子!\n",sum);
printf("如果每25000粒麦子为1kg,那么应该给%11u公斤麦子!\n",weight);
return 0;
}
llu不是11u 能对才怪 wp231957 发表于 2021-10-13 07:03
llu不是11u 能对才怪
llU是什么意思?
lsp3359869138 发表于 2021-10-14 14:35
llU是什么意思?
长长无符号整
就是那个什么xxxlonglong lsp3359869138 发表于 2021-10-14 14:35
llU是什么意思?
long long int对应llu ,注意大小写 本帖最后由 傻眼貓咪 于 2021-10-14 17:05 编辑
#include <stdio.h>
int main(){
unsigned long long wheat = 0, kg;
for(int i=0; i<64; i++) wheat += 2<<i; // 这里用位元运算符速度更快
kg = wheat/25000;
printf("舍罕王应该给予达依尔%llu粒麦子!\n如果每25000粒麦子为1公斤,那么应该给%llu公斤麦子!\n", wheat, kg);
return 0;
}舍罕王应该给予达依尔18446744073709551612粒麦子!
如果每25000粒麦子为1公斤,那么应该给737869762948382公斤麦子!
页:
[1]