//
// main.c
// 단기 연구 과제
// Created by Shiro Nai on 07/05/2019.
// Copyright © 2019 Shiro Nai. All rights
// reserved.
#include <stdio.h>
#include <math.h>
int main(int argc, const char * argv[]) {
double n;
printf("How many people?");
scanf("%lf", &n);
int k = floor(log10(n)/log10(2));
printf("The last standing person's number is %lf.", (2*(n-(2^k)))+1);
return 0;
}
输出与我预期的不同。
例如,当n
= 5时答案为3,但输出为11。
答案 0 :(得分:3)
^
符号不是幂运算符。这不会进行任何数学运算,这是一个exclusive-or运算符。
要进行功率计算,您需要pow()
中的math.h
#include <stdio.h>
#include <math.h>
int main() {
printf("The value of 11 ^ 3 = %.2f", pow(11.0, 3)); // outputs 1331.00
}
来源: