MOOC北京理工《C语言程序设计(上)》第5周第2题:寻找特殊偶数

题目内容:

有一种特殊偶数,它每一位上的数字都两两不相同。我们现在需要找出四位数中某一区间内的这类偶数。

输入格式:

所要寻找的四位偶数的范围。每组输入有两个数字:第一个数字是最小范围;第二个数字是最大范围。如果输入遇到0,输入结束。

输出格式:

列出此范围内的所有特殊偶数,并且列出此范围内特殊偶数的个数。

输入样例:

3000  3020
6040  6090
0 0

输出样例:

3012  3014  3016  3018  
counter=4
6042  6048  6052  6054  6058  6072  6074  6078  6082  6084  
counter=10
输入样例:

9  101
87 -1
0 0

输出样例:

Error
Error
#include<stdio.h> 
int main()
{ 
    int i, j, k, a, b, c, d, m=0, e; 
    for( e = 0 ; e >= 0 ; e++) 
    {
        scanf("%d%d",&i,&j);  
        if( i == 0 || j == 0 )  break;  
        else 
        if( ( i > 9999 || i < 1000 ) || ( j > 9999 || j < 1000 ) ) 
            printf("Error\n"); 
        else
        {
            for( k = i ; k <= j ; k++) 
            {
                if ( k % 2 == 1) continue; 
                a = k / 1000;
                b = ( k % 1000 ) / 100;
                c = ( k % 100 ) / 10;
                d = k % 10;   
                if( a == b || a == c || a == d || b == c || b == d || c == d ) continue; 
                printf("%d  ",k);
                m += 1;
            }  
            printf("\ncounter=%d\n",m);
            m=0;
        }
    }
    return 0;
}
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值