判断素数,主函数输入10个整数,素数输出,要求每行最多五个,为什么函数是int ss(int j)而主函数内是ss(a)


    int ss(int j);

    int main()
{
    int a; 
    int n = 0;
    int i;
    for(i=1;i<=10;i++)
    {
        scanf("%d",&a);
        if(ss(a)) // why
        {
            printf("%d", a);
            n++ ;
        }
        if(n == 5)
        {
            printf("\n");
        }
    }
    return 0;
}
    int ss(int j)
{
    int  flag = 1;
    int i;
    for(i=2;iif(j%2 == 0)
        {
            flag = 0;
            break;
        }
        if(flag == 0)
        return 0;
        else
        return 1;
    }
}

这个是函数和调用函数的基本用法和规范,就是这么写的。
int ss(int j)这里是定义一个函数,需要指定返回值的类型以及参数的类型,所以函数那里有int
然而 调用的时候直接写函数名,直接传入参数的值就可以了ss(a),不用写int来说明是什么类型,因为函数定义那里已经写明了必须是int
望采纳哦。!!!

主函数中的 ss(a) 调用了名为 ss 的函数,并将输入的整数 a 作为参数传递给了这个函数。ss 函数接收一个 int 类型的参数 j,并在函数内部判断 j 是否为素数。如果 j 是素数,则 ss 函数返回 1;否则,ss 函数返回 0。在主函数中,输入的每个整数都被传递给了 ss 函数,如果 ss 函数返回 1,则该整数被输出。如果输出的整数个数等于 5,则在下一个整数输出前输出一个换行。

函数是int ss(int j) 这是函数的声明和定义的时候,需要这样的语法。
ss(a) 是函数调用的语法。