| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 418 人关注过本帖
标题:初学者求助大神
只看楼主 加入收藏
我爱C爱我
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2016-10-16
结帖率:0
收藏
已结贴  问题点数:10 回复次数:3 
初学者求助大神
#include<stdio.h>

   
int main()
{
     int i,j,a[100],m,n,t;
     float s;
        scanf("%d",&m);
        for(i=1;i<=m;i++)
        scanf("%d",&a[i]);
        for(i=1;i<=m;i++)
        {
            n=a[i];
            s=0;
            for(j=1;j<=n;j++)
            {
                if(j%2==0)s=s-1.0/j;
                if(j%2!=0)s=s+1.0/j;
            }
            printf("%.2f\n",s);
        }
   
    return 0;
}  1)为什么要1.0 否则就会错误?  2为什么不能将for(j=1;j<=n;j++) 改为I的for循环?3)n=a[i];是指数组的个数吗?
搜索更多相关主题的帖子: include return 
2016-11-01 13:15
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:4 
第一个问题哪里错我没有看出来,而第二个问题不能改为i的for循环,因为循环结束时保留了i的值,3,n=a[i]不是是指数组的个数,而是指n=数组编号为i的元素值

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-11-01 13:57
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:4 
关于浮点数与除法(/) 其中的一个准则就是

INT/INT=INT
DOUBLE/INT=DOUBLE
FLOAT/INT=FLOAT
INT/DOUBLE=DOUBLE
INT/FLOAT=FLOAT
DOUBLE/DOUBLE=DOUBLE
FLOAT/FLOAT=FLOAT


DO IT YOURSELF !
2016-11-01 14:21
炎天
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:桃花岛
等 级:贵宾
威 望:29
帖 子:1218
专家分:4986
注 册:2016-9-15
收藏
得分:0 
s=s-1.0/j;   此时 s是float  j是int
上式也可以这样写  s=s-(float)1/j  将int类型1强制转换为float类型

早知做人那么辛苦!  当初不应该下凡
2016-11-01 15:13
快速回复:初学者求助大神
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029368 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved