| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 663 人关注过本帖
标题:找出亮点! 自己写的一个亮点程序!上次那个程序有点问题所以这次我修改了下 ...
只看楼主 加入收藏
lyxhkg
Rank: 2
等 级:禁止访问
帖 子:50
专家分:24
注 册:2012-4-24
结帖率:81.82%
收藏
已结贴  问题点数:10 回复次数:10 
找出亮点! 自己写的一个亮点程序!上次那个程序有点问题所以这次我修改了下!
程序代码:
# include <stdio.h>
int main (void)
{
    int sum = 0;
    int sum1 = 0;
    int i;
    int k;
    int cnt = 0;
    float avg = 0;
    float avg1 = 0;
    int cnt1 = 0;
    printf ("请输入任意两个整数值:");
    scanf ("%d %d",&i,&k);
   
   
       
       
            for (i=i;i<=k;++i)//计算奇数和代码
            {    if(i%2==1)
                    {
                    sum += i;//sum = suum + i
                    ++cnt;//计算奇数个数代码
                   
                }
       
        //以上是奇数代码
       
        //    for (i=i; i<=k;++i)//计算偶数代码
                if (i%2==0)
                { 
                    sum1 += i;//计算偶数和代码
                    ++cnt1;//计算偶数个数代码
                   
                }
               
            }
   
    avg1 = (float) sum1 / cnt1;//偶数计算平均值代码
    avg = (float) sum / cnt;//奇数计算平均值代码
    printf ("偶数和 = %d\n",sum1);
    printf ("偶数个数 = %d\n",cnt1);
    printf ("偶数平均值 = %f\n",avg1);
    printf ("奇数平均值 = %f\n",avg);
    printf ("奇数个数 = %d\n",cnt);
    printf ("奇数和 = %d\n",sum);
    return 0;
        }
输入任何两个整数值!她就可以给你奇数偶数的各种值
2012-05-27 09:15
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
1 + 3 + 5 + .... + 2n-1 = n^2 和

2 + 4 + 6 + .... + 2n = n*(n+1)

难道阁下不知道吗  你上面的程序的时间复杂度是O(n) 把这个加进去之后就是O(1)

                                         
===========深入<----------------->浅出============
2012-05-27 09:39
lyxhkg
Rank: 2
等 级:禁止访问
帖 子:50
专家分:24
注 册:2012-4-24
收藏
得分:0 
以下是引用laoyang103在2012-5-27 09:39:50的发言:

1 + 3 + 5 + .... + 2n-1 = n^2 和

2 + 4 + 6 + .... + 2n = n*(n+1)

难道阁下不知道吗  你上面的程序的时间复杂度是O(n) 把这个加进去之后就是O(1)
我试图模拟的你所说的方法但是我最后还是失败了!求代码!
2012-05-27 09:45
xuzejia_love
Rank: 2
等 级:论坛游民
帖 子:41
专家分:49
注 册:2010-12-5
收藏
得分:0 
写得这么长,还以为很复杂呢

学的是语法,要的是算法。
2012-05-27 11:11
小跳蚤
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:1
帖 子:437
专家分:1623
注 册:2011-4-9
收藏
得分:0 
回复 3楼 lyxhkg
laoyang不是说了吗
偶数:n^2
奇数:n*(n+1)

2012-05-27 11:15
lyxhkg
Rank: 2
等 级:禁止访问
帖 子:50
专家分:24
注 册:2012-4-24
收藏
得分:0 
回复 5楼 小跳蚤
那这样不是代码就减少了!如果同理的话那很多这样类型的代码不是也少很多了!!
2012-05-27 11:39
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
回复 6楼 lyxhkg
恩 你说的没错   代码减少不是目的  关键是降低时间复杂度

To楼主:也许楼主还不知道这个公式怎么来的   其实就是  项数*(首项+尾项)/2得到的

比如我们算下 5 到 10 之间的奇数总和 如果你觉得直接算不好想的话

可以用1到10之间的奇数总和减去1到4之间的奇数总和  这回应该能写出来了吧


                                         
===========深入<----------------->浅出============
2012-05-27 11:55
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:10 
回复 5楼 小跳蚤
这位兄弟   这可不是我说的 我说的是奇数是n^2 偶数是 n*(n+1)

你是不弄反了

                                         
===========深入<----------------->浅出============
2012-05-27 11:56
小跳蚤
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:1
帖 子:437
专家分:1623
注 册:2011-4-9
收藏
得分:0 
回复 8楼 laoyang103
丢人了
2012-05-27 11:59
lyxhkg
Rank: 2
等 级:禁止访问
帖 子:50
专家分:24
注 册:2012-4-24
收藏
得分:0 
受教了!我看来我还得去鬼谷继续深造下!
2012-05-27 13:32
快速回复:找出亮点! 自己写的一个亮点程序!上次那个程序有点问题所以这次我修 ...
数据加载中...
 
   



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

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