函数的调用会花掉很多时间。
定义一个数组,充分利用数组的下标和值。如int a[1000],把下标和值都利用上。
#
include<stdio.h>
# define MAX 10003
int main()
{
int i , b , sum , a[ MAX ] = { 0 };
for (i = 1 ; i < MAX ; i ++ )
{
b = sum = i;
while (b)
{
sum += b % 10 ;
b /= 10 ;
}
if (sum < MAX )
a[sum] = 1 ;
}
for (i = 1 ; i < MAX ; i ++ )
if (a[i] == 0 )
printf ( " %d/n " , i);
return 0 ;
}
# define MAX 10003
int main()
{
int i , b , sum , a[ MAX ] = { 0 };
for (i = 1 ; i < MAX ; i ++ )
{
b = sum = i;
while (b)
{
sum += b % 10 ;
b /= 10 ;
}
if (sum < MAX )
a[sum] = 1 ;
}
for (i = 1 ; i < MAX ; i ++ )
if (a[i] == 0 )
printf ( " %d/n " , i);
return 0 ;
}