涵怎么读音是什么意思:以下的C编码中……

来源:百度文库 编辑:神马品牌网 时间:2024/04/27 16:55:40
#include <stdio.h>
#define PI 3.14159
viod main()
{
float r; /*r代表的不是整型变量吗*/
int s=0; /*可以写成s=0,r=5吗?为何要换行*/
r=5;
s=PI*r*r;
printf("s=%d",s);
}
但r前的int不是给r定了个义吗?
是前面的float>int吗?

float r;你这句定义了r为浮点型.

int s=0; /*可以写成s=0,r=5吗?为何要换行*/
不可以,因为你的r已经定义了浮点型了.

s=PI*r*r;/*电脑在运行这个语句时会自动把s的数据类型转换为浮点型,所以你在输出语句那里出错了*/
自动转换规则
char\shot->int->unsigned->long\float->double

这样说明白了吧.

#include <stdio.h> //头文件
#define PI 3.14159 //预编译
viod main() //主函数名
{
float r; //r为浮点型变量
int s=0; //s为整形变量 所以要分开赋值
s=PI*r*r; //计算面积
printf("s=%d",s); //打印出S为整形变量
} //end

r定义为浮点型数值,是float决定的
s定义为整数型数值,是int决定的
硬要写在一起的只有同一类型的才可以
s=PI*r*r是求圆面积的公式
r和PI都是浮点型的数字,所以得出是浮点数
而其值是赋给整型的s
最后答案应该是一个整数78

r是变量,声明成什么就是什么
s被声明成整形,r已经是浮点形,如果不换行,r就会被强制转换为整形