C语言改错,怎么改才对

来源:百度知道 编辑:UC知道 时间:2024/05/25 17:33:04
要求判断是不是素数
#include<stdio.h>

void main()
int prime( )
{
int x,a[10]

printf("Input a num:\n");
scanf("%d",&x);
if (prime(f))
printf("YES\n")
else
printf("NO\n");
}
prime (int a[i])
int i=0;
{
a[i]=x%2;i++
a[i]=x%3;i++
a[i]=x%5;i++
a[i]=x%7;
if (a[i]==0)
f=0
else
f=1
return(f)
}
不要改变我的原来意思就改错误的,回答正确在给100谢谢

不改变原来意思,就改语法错误:
#include<stdio.h>
int x,a[10];

int prime ()
{
int i=0,f;
a[i]=x%2;i++;
a[i]=x%3;i++;
a[i]=x%5;i++;
a[i]=x%7;
if ( (a[i]==0)
f=0;
else
f=1;
return(f) ;
}

void main()
{
printf("Input a num:\n");
scanf("%d",&x);
if (prime())
printf("YES\n") ;
else
printf("NO\n");
}

--------------------------
素数 是 除了能表示为它自己和1的乘积以外,不能表示为任 何其它两个整数的乘积 的 整数。你用的判断方法不对。

#include <stdio.h>

int prime(int);//这里需要函数声明

void main()
{
int x;
printf("Input a num:\n");
scanf("%d",&x);
if (prime(x))
printf("YES\n");
else
printf("NO\n");
}

int prime (int x)/*传递参数的时候是应该把你要判断的参数传入才对*/
{
int a[10];
int i = 0;
int f;/*在使用变量之前要