C语言提问4

来源:百度知道 编辑:UC知道 时间:2024/05/16 18:21:29
Sramoc ( K , M ) 表示用数字0、1、2…、K-1组成的自然数中能被M整除的最小数。给定 K、M,求Sramoc ( K,M )。例如 K=2,M=7的时候,Sramoc( 2 , 7 ) = 1001。

输入格式:

从文件SRAMOC.DAT读入数据。第一行为两个整数K、M满足2<=K<=10、1<=M<=1000。

输出格式:
输出Sramoc(K,M)并换行。

样例

SRAMOC.IN

2 7

SRAMOC.OUT

1001

// 13.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#define MAX 10000000
bool islimit(unsigned k,long unsigned n)
{
if(n<10)
if(n<k)return 1;
else return 0;
else
if(islimit(k,n%10))
return(islimit(k,n/10));
else return 0;
}
unsigned long Sramoc(unsigned k,unsigned m)
{
unsigned long i,n=0;
for(i=1;n<MAX;i++)
if(islimit(k,n=i*m))
{
return n;
break;
}
return 0;
}
int _tmain(int argc, _TCHAR* argv[])
{
unsigned k,m;
unsigned long n;

scanf("%u,%u",&k,&m);
if(((k>=2)&&(k<=9))&&((m>=1)&&(m<=1000)))
{

if(n=Sramoc(k,m))
printf("%lu\n",n);
else
printf("wrong");
}
else
printf("wrong");

return 0;
}