例如,
int result;
result = 125/100;
Run Code Online (Sandbox Code Playgroud)
要么
result = 43/100;
Run Code Online (Sandbox Code Playgroud)
结果总会成为师的底线吗?什么是定义的行为?
我得到了这个C代码.
#include <stdio.h>
int main(void)
{
int n, d, i;
double t=0, k;
scanf("%d %d", &n, &d);
t = (1/100) * d;
k = n / 3;
printf("%.2lf\t%.2lf\n", t, k);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我想知道为什么我的变量't'总是为零(在printf函数中)?
我正在尝试计算iPhone应用程序中的一些数字.
int i = 12;
int o = (60 / (i * 50)) * 1000;
Run Code Online (Sandbox Code Playgroud)
我希望在这个例子中o为100(即毫秒),但它等于0,由NSLog(@"%d",o)显示.
这也等于0.
int o = 60 / (i * 50) * 1000;
Run Code Online (Sandbox Code Playgroud)
这等于250,000,这是从左到右的直接数学.
int o = 60 / i * 50 * 1000;
Run Code Online (Sandbox Code Playgroud)
什么在我头顶飞过?
谢谢,
尼克
我试图通过int在我的程序中划分两个s 来生成一个浮点数.这是我期望的:
1/120 = 0.00833
这是我正在使用的代码:
float a = 1 / 120;
Run Code Online (Sandbox Code Playgroud)
但它没有给我我期望的结果.当我打印出来时,我得到以下内容:
inf
Run Code Online (Sandbox Code Playgroud)