C语言函数程序编程问题

3、编写程序,输出100以内的正整数中包括数字3,5,7中的一个的数。判断用函数实现
这个题目的意思好像是35 57 这种含两个的不算
怎么写啊,急!


#include<stdio.h>
int solve(int n)
{
    int flag = 0;
    while(n)
    {
        int t = n % 10;
        if(t == 3 || t == 5 || t == 7)
        flag++;
        n /= 10;
    }
    return flag == 1;
}
int main(void)
{
    int n=100;
    for(int i = 1 ; n >= i ; i ++)
    {
        if(solve(i))
        printf("%d ",i);
    }
    return 0;
}