| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2762 人关注过本帖
标题:数组和 整除,求大神帮忙
只看楼主 加入收藏
z605525923
Rank: 1
等 级:新手上路
帖 子:33
专家分:7
注 册:2017-4-19
收藏
得分:0 
回复 16楼 renkejun1942
  打印出最大的三个值,我用了好几种方法了 都打印不出来。


        
          int a , b , c;
                  int max= 0 ;
                  int arr [10]= {1,2,3,4,5,6,7,8,9,10};
            
                   for (a=0; a < 10 ; a ++)
                   {
                       if (arr[a]>max)
                       {
                           max= arr[a] ;         
                          
                       }
                       for (b = 0 ; b < 10 ; b ++)
                       {
                            if (b<max )
                        {
                             b =arr[b] ;
                        }
                       }

                   }
                     printf("max =%d \n",max );
                     printf("b =%d\n",b);
                        
2017-04-21 20:39
renkejun1942
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:不是这样
等 级:贵宾
威 望:33
帖 子:1645
专家分:5297
注 册:2016-12-1
收藏
得分:0 
回复 21楼 z605525923
首先,找到最大值,然后记录该值的下标。
重新再来一次,这一次跳过记前面那个下标。
最后再来一次,这一次跳过前两个下标。

或者,对数组进行降序排序。
打印前三个值就可以了。

后面这个办法写出的代码更短。

09:30 05/21 种下琵琶种子,能种活么?等待中……
21:50 05/27 没有发芽。
20:51 05/28 没有发芽。
23:03 05/29 没有发芽。
23:30 06/09 我有预感,要发芽了。
2017-04-21 21:07
z605525923
Rank: 1
等 级:新手上路
帖 子:33
专家分:7
注 册:2017-4-19
收藏
得分:0 
回复 22楼 renkejun1942
                  int a , b , c;
                  int max = 0 ;
                  
                  int arr [10]={1,2,3,4,5,6,7,8,9,10} ;
            
                   for (a=0; a < 10 ; a ++)
                   {
                       if (arr[a]>max)
                       {
                           max= arr[a] ;                  
                       }            
                   }
                   printf("max =%d \n",max );
                    
                   for (b = 0 ; b < 10 ; b ++)
                   {
                        if (arr[b] > max)
                        {
                            max = arr[b]  ;
                        }
                   }
                   printf(" b  =%d \n" ,max-1 ); 这样可以不

[此贴子已经被作者于2017-4-21 21:27编辑过]

2017-04-21 21:19
z605525923
Rank: 1
等 级:新手上路
帖 子:33
专家分:7
注 册:2017-4-19
收藏
得分:0 
回复 22楼 renkejun1942
标记下标跳过标记的下标,和降序排列,我都不太懂 。。。
2017-04-21 21:41
renkejun1942
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:不是这样
等 级:贵宾
威 望:33
帖 子:1645
专家分:5297
注 册:2016-12-1
收藏
得分:5 
你这变成学的也是凄凉,这么简单的程序都搞不定。

下面是最简单的写法,排序的办法自己写吧。

将一个大的问题,拆解成一个个小的问题,一步一步解决这些小问题,从而解决大的问题。

程序代码:
#include <stdio.h>

int
main( void )
{
    int a, b;
    int ix, j;
    int max;
    int array[ 10 ] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

    j = 3;

    while(  j > 0)
    {
        for( ix = 0, max = array[ 0 ]; 10 > ix; ++ix )
        {
            if( 3 == j && max < array[ ix ] )
            {
                max = array[ ix ];
                a = ix;
            }
            else if( 2 == j && max < array[ ix ] && ix != a )
            {
                max = array[ ix ];
                b = ix;
            }
            else if( 1 == j && max < array[ ix ] && ix != a && ix != b )
                max = array[ ix ];
        }
        printf( "%d ", max );
        --j;
    }

    return 0;
}

09:30 05/21 种下琵琶种子,能种活么?等待中……
21:50 05/27 没有发芽。
20:51 05/28 没有发芽。
23:03 05/29 没有发芽。
23:30 06/09 我有预感,要发芽了。
2017-04-21 21:53
z605525923
Rank: 1
等 级:新手上路
帖 子:33
专家分:7
注 册:2017-4-19
收藏
得分:0 
回复 25楼 renkejun1942
哥,感觉你说的每句话都好有学问。
 我在自学,自学好难

在for 里面对数组清零, while循环里面 嵌套for , 还有j = 3 这种我都没见过,,

[此贴子已经被作者于2017-4-21 22:08编辑过]

2017-04-21 22:00
renkejun1942
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:不是这样
等 级:贵宾
威 望:33
帖 子:1645
专家分:5297
注 册:2016-12-1
收藏
得分:0 
回复 26楼 z605525923
自学能有什么难的,我也是自学的。
C语言就30多个关键字,这也难?
无论什么语言都一样,重要的是解决问题的思路。
不要着急着写代码,一个题目,先打草稿,先想想,怎么解决。
实在不行,在纸上把数组画出来,值也写出来,想一想。

就这样,我该睡了。

09:30 05/21 种下琵琶种子,能种活么?等待中……
21:50 05/27 没有发芽。
20:51 05/28 没有发芽。
23:03 05/29 没有发芽。
23:30 06/09 我有预感,要发芽了。
2017-04-21 22:05
z605525923
Rank: 1
等 级:新手上路
帖 子:33
专家分:7
注 册:2017-4-19
收藏
得分:0 
回复 27楼 renkejun1942
先别睡,好人做到底呀, 代码看不懂,加个注释可以吗
2017-04-21 22:12
renkejun1942
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:不是这样
等 级:贵宾
威 望:33
帖 子:1645
专家分:5297
注 册:2016-12-1
收藏
得分:0 
回复 28楼 z605525923
自己写。

你翻下我的帖子,我的代码什么时候有过注释?(除非必要)

09:30 05/21 种下琵琶种子,能种活么?等待中……
21:50 05/27 没有发芽。
20:51 05/28 没有发芽。
23:03 05/29 没有发芽。
23:30 06/09 我有预感,要发芽了。
2017-04-21 22:13
z605525923
Rank: 1
等 级:新手上路
帖 子:33
专家分:7
注 册:2017-4-19
收藏
得分:0 
回复 29楼 renkejun1942
呃呃呃, 你说的C语言才 30几个关键字是什么意思
2017-04-21 22:19
快速回复:数组和 整除,求大神帮忙
数据加载中...
 
   



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

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