CRIBA ERATOSTENES C
Buenas, tengo un ódigo en c que me da error que no consigo sacar y quisiera ver si alguien le hechaba un ojo y una mano de paso XD. Me da un error y no tengo ni idea cual.
#include <stdio.h>
#include <stdlib.h>
#define N 1000
int llenar_vector(int,int);
int esprimo(int);
int criba(int,int,int);
int main(void){
int i,j,cont,x,vector[N],primo[N];
cont=0;
llenar_vector(vector[N], N);
for(i=0;i<=N;i++){
if(esprimo(vector[i])==0){
criba(vector[N],N,i);
primo[cont]=i;
cont++;
}
}
for(i=cont;i>=0;i--){
printf("%d",primo[i]);
}
}
int llenar_vector(int vector[], int N){
int i;
for(i=0;i<=N-2;i++){
vector[i]=i+2;
}
}
int primo(int num){
int resto,i;
for(i=2;i<num-1;i++)
{
resto=num%i;
if ((resto==0)&&(num!=2))
return 0;
else
return 1;
}
int criba(int vector[],int n,int i){
int x;
x=i;
for(i=x+1;i=n;i++){
if(vector[i]%x==0)
vector[i]=-1;
}
}
}
Line 30: error: expected ';', ',' or ')' before numeric constant
#include <stdio.h>
#include <stdlib.h>
#define N 1000
int llenar_vector(int,int);
int esprimo(int);
int criba(int,int,int);
int main(void){
int i,j,cont,x,vector[N],primo[N];
cont=0;
llenar_vector(vector[N], N);
for(i=0;i<=N;i++){
if(esprimo(vector[i])==0){
criba(vector[N],N,i);
primo[cont]=i;
cont++;
}
}
for(i=cont;i>=0;i--){
printf("%d",primo[i]);
}
}
int llenar_vector(int vector[], int N){
int i;
for(i=0;i<=N-2;i++){
vector[i]=i+2;
}
}
int primo(int num){
int resto,i;
for(i=2;i<num-1;i++)
{
resto=num%i;
if ((resto==0)&&(num!=2))
return 0;
else
return 1;
}
int criba(int vector[],int n,int i){
int x;
x=i;
for(i=x+1;i=n;i++){
if(vector[i]%x==0)
vector[i]=-1;
}
}
}
Line 30: error: expected ';', ',' or ')' before numeric constant
