日料的海胆要蘸什么吃:int与float定义问题?C高手进!!
来源:百度文库 编辑:高校问答 时间:2024/10/06 16:48:24
main()
{int i,t,n=20;float a=2,b=1,s=0;/*此处a与b为什么要定义为实型,为什么不能定义为整型呢?(注:a与b只要有一个定义为实型程序都运行正确)*/
for(i=1;i<=n;i++)
{s=s+a/b;t=a;a=a+b;b=t;}
printf("sum=%9.6f\n",s);}
{int i,t,n=20;float a=2,b=1,s=0;/*此处a与b为什么要定义为实型,为什么不能定义为整型呢?(注:a与b只要有一个定义为实型程序都运行正确)*/
for(i=1;i<=n;i++)
{s=s+a/b;t=a;a=a+b;b=t;}
printf("sum=%9.6f\n",s);}
A与B都定义为整形就得出另一个结果了,因为A/B会把结果的小数点约去.A与B只要有一个为实形,A/B的结果就是实形的
什么东西???
正确是什么意思??
整型/整型=整型(此整型为所得最大整数)
实型/整型=实型;
整型/实型=实型;
实型/实型=实型;
如果a和b都定义成int,下面的计算s=s+a/b,其中a/b的结果会是整形,导致结果错误。a与b任意一个定义成实型,根据类型计算法则,结果都是实型
因为只要a,b中有一个为实行,就可以把另一个转变成实行。建议你看一下数据的装换。
是谁规定的a和b非要都是实型的呢?书本?还是老师?正如LZ所说,a和b任意一个是实型都是正确的,那么,从运算过程看,b定义为整形可能比2个都是实型要更好一点,原因我相信LZ自己也能看出来了,有时候,程序是自己写出来的,没有必要理会一些条条框框,只要是比原来的效果好,即使是自己的见解,也不见得比书本差。
int与float定义问题?C高手进!!
c语言中long int与float
C语言若有定义:float y;int *p;则语句p=&y;为什么是错误的?
已有定义:float f=13.8;,则表达式:(int)f%3的值是
已有定义:float f=13.8;,表达式:(int)f%3的值是
定义二维数组可以定义成int c[][10],为什么不能定义成int c[10][]?
int 与 CString 的转换问题
在c语言中,整型变量int为什么占4个字节?float占4个字节?double占8个字节?(能详细说明一下吗)
在c语言中,整型变量int为什么占4个字节?float占4个字节?double占8个字节?(能详细说明一下吗)
union stu {int k; char sex; float score;}a,b,c;其中的共用体变量a所占的内存空间是多个字节??