| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1643 人关注过本帖, 1 人收藏
标题:C语言的一道题
只看楼主 加入收藏
秦殇
Rank: 2
等 级:论坛游民
帖 子:61
专家分:77
注 册:2013-3-13
收藏
得分:0 
回复 18楼 Susake
不是第二个数是第一个最小数的2倍,而是第三个最大的数,是第二个数的2倍。
2013-04-09 21:53
秦殇
Rank: 2
等 级:论坛游民
帖 子:61
专家分:77
注 册:2013-3-13
收藏
得分:0 
回复 16楼 扬州笑哈哈
这是怎么列举的。。不懂
2013-04-09 21:54
Juson
Rank: 4
等 级:业余侠客
帖 子:70
专家分:235
注 册:2013-4-8
收藏
得分:2 
程序代码:
#include <stdio.h>
int
main ( void )
{
    int s[10] ;
    int a, b, c, i, j, k, t ;

    for ( i = 4; i < 10; i++ )
    {
        for ( j = 1; j < 10; j++ )
        {
            if ( j == i )
                continue ;
            for ( k = 1; k < 10; k++ )
            {
                if ( k == i || k == j )
                    continue ;
                a = i * 100 + j * 10 + k ;
                if ( a % 2 == 0 && a % 3 == 0 )
                {
                    for ( t = 1; t < 10; t++ )
                        s[t] = 0 ;
                    b = a / 2;
                    c = a / 3 ;
                    s[i] = s[j] = s[k] = 1;
                    s[b / 100] = s[b / 10 % 10] = s[b % 10] = 1 ;
                    s[c / 100] = s[c / 10 % 10] = s[c % 10] = 1 ;
                    for ( t = 1; t < 10; t++ )
                        if ( s[t] == 0 )
                            break ;
                    if ( t == 10 )
                        printf ( "a = %d, b = %d, c = %d\n", a, b, c ) ;
                }
            }
        }
    }
    return 0 ;
}

2013-04-09 22:29
秦殇
Rank: 2
等 级:论坛游民
帖 子:61
专家分:77
注 册:2013-3-13
收藏
得分:0 
回复 23楼 Juson
运行了没有结果。。
2013-04-09 22:37
Juson
Rank: 4
等 级:业余侠客
帖 子:70
专家分:235
注 册:2013-4-8
收藏
得分:0 
回复 24楼 秦殇
这个就是没有结果的吧
2013-04-09 23:04
孤独城堡
Rank: 2
等 级:论坛游民
帖 子:55
专家分:14
注 册:2008-9-27
收藏
得分:2 
我就说怎么会没有结果啊
2013-04-10 08:03
y3765258
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:106
专家分:172
注 册:2013-4-9
收藏
得分:0 
#include<stdio.h>
int main()
{
    int panduan(int *a);    //判断数组里 是否有数字相同,有的话 返回0,没有的话 就返回1.
    void shuru(int *a,int n);   //把3个数,每个位都放进数组里 例如 当I=123时,数组内 321642963
    int i,j,k,a[9];
    for(i=100;i<=333;i++)
    {
        shuru(a,i);
        if(panduan(a))
            printf("%d  %d  %d\n",i,2*i,3*i);
    }
}
void shuru(int *a,int n)
{
    int b[3]={n,2*n,3*n},i,j=0;
    for(i=0;i<3;i++)
    {
        while(b[i]>0)
        {
            a[j++]=b[i]%10;
            b[i]/=10;
        }
    }

}
int panduan(int *a)
{
    int i,j;
    for(i=0;i<9;i++)
    {
        for(j=i+1;j<9;j++)
        {
            if(a[i]==a[j])
                return 0;
        }
    }
    return 1;
}
我是六楼的,按照思路把源代码写了,其实很简单的。看我这么有心人,把分给我吧

有问题一起探讨,一起进步。
2013-04-10 15:48
秦殇
Rank: 2
等 级:论坛游民
帖 子:61
专家分:77
注 册:2013-3-13
收藏
得分:0 
回复 26楼 孤独城堡
兄弟。。你题目貌似没看清 啊。。辛苦你了
2013-04-10 18:49
y3765258
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:106
专家分:172
注 册:2013-4-9
收藏
得分:0 
192  384  576
219  438  657
267  534  801
273  546  819
327  654  981
兄弟 不是这个答案么。。。

有问题一起探讨,一起进步。
2013-04-10 18:57
秦殇
Rank: 2
等 级:论坛游民
帖 子:61
专家分:77
注 册:2013-3-13
收藏
得分:0 
回复 29楼 y3765258
最大数是中间数的2倍,是最小数的3倍。。
2013-04-10 21:55
快速回复:C语言的一道题
数据加载中...
 
   



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

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