Verwachte declaratiespecificatiefout in functie

Nieuw op de exchange, dus sorry als mijn opmaak is uitgeschakeld.
Ik krijg een foutmelding voor “verwachte declaratiespecificaties” Dit staat in de is_prime-functie die ik onderaan heb gedefinieerd. Kun je wat licht werpen op deze fout en hoe je deze kunt corrigeren?

#include <stdio.h>
#include <math.h>
main()
{
    int n;
    int k;
    int j;
//gets user input for length of string
    printf("Enter the value of n:");
    scanf("%d", &n);
//stores user input as n
    printf("Printing primes less than or equal to %d: \n", n);
    for(k = 2; k <= n; k++)
    {
        if(is_Prime(k) == 1)
        {
            printf("%d,", k);
        }
    }
   //here is the is_Prime function
{
int is_Prime (int k)
for(j = 2; j < k; j++)
    {
if(k%j != 0)
      {
    return 1;
      }
else if(k%j == 0)
       {
return 0;
break;
       }
    }   
}   

hier zijn de uitvoerfouten

main.c: In function 'is_Prime':                                                                                                                                                 
main.c:29:1: error: expected declaration specifiers before 'for'                                                                                                                
 for(j = 2; j < k; j++)                                                                                                                                                         
 ^                                                                                                                                                                              
main.c:29:12: error: expected declaration specifiers before 'j'                                                                                                                 
 for(j = 2; j < k; j++)                                                                                                                                                         
            ^                                                                                                                                                                   
main.c:29:19: error: expected declaration specifiers before 'j'                                                                                                                 
 for(j = 2; j < k; j++)                                                                                                                                                         
                   ^                                                                                                                                                            
main.c:42:1: error: expected declaration specifiers before '}' token                                                                                                            
 }                                                                                                                                                                              
 ^                                                                                                                                                                              
main.c:42:1: error: expected '{' at end of input                                                                                                                                
main.c: In function 'main':                                                                                                                                                     
main.c:42:1: error: expected declaration or statement at end of input  

Antwoord 1, autoriteit 100%

Je hebt is_Primegedefinieerd in de hoofdtekst van main. Dit is niet mogelijk in C.

Of je mist een afsluitende accolade aan het einde van de hoofdtekst van main.

Het andere probleem werd al genoemd in shf301’s antwoord.


Antwoord 2, autoriteit 98%

Je mist de openingsaccolade {voor de functie is_Prime.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Other episodes