鱼C论坛

 找回密码
 立即注册
查看: 88|回复: 6

代码结果不懂

[复制链接]
发表于 2021-10-14 20:11:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
#include <stdio.h>

int main()
{
        int a = 2, b = 1;

        printf("%d\n", a / 'b');

        return 0;        
}
为什么输出的会是零呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2021-10-14 20:53:23 | 显示全部楼层
b不能用''括起来

  1. #include <stdio.h>

  2. int main()
  3. {
  4.         int a = 2, b = 1;

  5.         printf("%d\n", a / b);

  6.         return 0;        
  7. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2021-10-14 21:30:28 | 显示全部楼层
‘b’是字符b,值是0x62,和变量b没有关系
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2021-10-14 22:18:20 | 显示全部楼层
  1. #include <stdio.h>
  2. #include <math.h>

  3. int main(){
  4.     int a = 2, b = 1;
  5.     printf("%d \n", a/'b');        // 表示变量 a 除字符 b 如同 2/98 = 0 ( 打印 %d, 2/98 变 0,字符 b 在 ASCII里编号是 98)
  6.     printf("%f \n", (float)a/'b'); // 表示变量 a 除字符 b 如同 2/98 = 0.020408 ( 打印 %f, 2/98 变 0.020408,字符 b 在 ASCII里编号是 98)
  7.     printf("%d \n", a/b);          // 表示变量 a 除变量 b
  8. }
复制代码
  1. 0
  2. 0.020408
  3. 2
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 7 天前 | 显示全部楼层

整型输出是抹掉小数点后的数码?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 7 天前 | 显示全部楼层

你的b没用单引号引起来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 7 天前 | 显示全部楼层
黑月黄龙 发表于 2021-10-16 09:31
整型输出是抹掉小数点后的数码?


整型输出是取上值,比如 3.14 变成 3,5.98 变成 5(也就是你理解的那样,抹掉小数点后的数码)

整数除整数 得整数
整数除浮点数 得浮点数
浮点数除浮点数 得浮点数
int a = 5.98(这里 a 自然变成 5,因为定义 a 是整数,取上值)
float b = 15(这里 b 自然变成 15.0,因为定义 b 是浮点数)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1

GMT+8, 2021-10-23 22:27

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表