c语言几分之几是怎么表示的

[复制链接]
查看11 | 回复4 | 2018-4-6 17:42:12 | 显示全部楼层 |阅读模式
我是c语言初学者,最近刚学到while语句,好像while挺重要的,我想学学好,不过这里有点看不懂,昨天看教程上说 几分之几 有点看不明白
【例子上 好像是说sum=sum+1.0/(double)i;这句表示一分之一吗】
恳请高手指点一下,谢谢了
完整的例子:
#include
main()
{
int i=1;
double sum=0;
while(i<21)
{

sum=sum+1.0/(double)i;
//主要是这句没明白什么意思

i++;
}
printf("sum=%lf\n",sum);
}
最好能详细点说一下,谢谢。。当然 如果有高手愿意加QQ指点那是更好了,(能语音那就更加好了)我也不会太烦你的 白天要上班的 就晚上回来自学一下 实在不懂的才会打扰一下。。
sulunbac,你好 我知道那是除法符号 就是因为看教程上说是 几分之几 我才奇怪的 忍不住问一下
好的,谢谢你 我在等等看 有没有更加让我信服的答案好吗
那个匿名朋友,你说的很好 我好像有点模糊的明白了 =会躺床上想会,明天好好看看,谢谢你啊

回复

使用道具 举报

千问 | 2018-4-6 17:42:12 | 显示全部楼层
虽然我也是初学者,但是你这个问题我能解决!(类型)(表达式)是强制转换由int i=1可知变量i是整形变量。double sum=0可知变量SUM为双精度实数,1.0也是实数。
/是算数运算符表示除。/的两边的数的类型应该相同故可以用(double)i将i的数据类型强制转换为double型也就是实数型来达到i1.0sum的类型相同方便C来计算。while(i<21) {
sum=sum+1.0/(double)i;
i++; }
就是sun等于1+1/2+1/3····+1/20除强制转换外C中还有自动转换你好好看看常量,变量,数据类型的知识
回复

使用道具 举报

千问 | 2018-4-6 17:42:12 | 显示全部楼层
sum是double型的i是整型的.sum+1.0/(double)i,这个是除法运算,(double)i是强制转换为double型的. 除法运算符/ 和你理解的几分之几在有时候是有区别的,切不要认为就是肯定就是几分之几。 2分之3你也可以等价于3除以2,但有时候不是这样的。具体现在很难想出具体情况。但肯定有这样的情况。
回复

使用道具 举报

千问 | 2018-4-6 17:42:12 | 显示全部楼层
"A/B"是求整德意思,用法是两边A和B都必须是实数。由于i定义的是整形,所以i要强制转换成实型。“double”八个字节实型...就像我们经常所写的1/2=0.5一样。。。不过c语言中“/”的用法不一样罢了...那句话的意思是SUM=1/20+1/19+......1/1;;;就是求和...
回复

使用道具 举报

千问 | 2018-4-6 17:42:12 | 显示全部楼层
sum每次加上i分之一
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行