这个简单的C语言程序问题出在哪?

来源:百度知道 编辑:UC知道 时间:2024/05/18 05:25:34
求3/4+1/4的值
#include<stdio.h>
main()
{
int a,b,c;
a=3;b=1;c=4;
printf("%f",a/c+b/c);
}

那是整数之间的运算用int 这个该用float

强制类型转换
printf("%f",(float)a/c+(float)b/c);

整数之间的运算,得到的还是整数。所以1/4=0;3/4=0
应该写成
double a,b,c;
a=3.0;b=1.0;c=4.0;
就ok了

printf("%f",a/c+b/c);

改为

printf("%f",(float)a/c+(float)b/c);

int 改为double ,main改为void main 就没问题了

main()
{
int a,b,c;//定义的整形变量 a b c
a=3;b=1;c=4;
printf("%f",a/c+b/c);//其中 a/c=0 b/c=0因为是整数相除所以为0(只保留整数位)而你输出强制转换为浮点类型所以输出的是0德浮点输出0.0000
}
main()
{
float a,b,c;
a=3;b=1;c=4;
printf("%f",a/c+b/c);
} 即可