나는 prim의 알고리즘에 대한이 piese 코드를 작성했으며이 오류가 발생합니다 : "예상 식별자 또는 '('앞에 'int'". 다른 .c 파일 이것은 다음과 같은 오류입니다. "s algoritm 2 \ prim.h | 6 | 오류 : 예상 식별자 또는 '('int '의 알고리즘 앞에') 이 오류가 발생하는 이유는 누구나 알 수 있습니까?예상 식별자 또는 '('앞에 'int'
헤더 파일
#ifndef prim
#define prim
#define nmax 10
void prim(int mat[nmax][nmax],int x,int n ,int m);
#endif // graphs
PRIM.c 파일
#include <stdio.h>
#include <stdlib.h>
#include "prim.h"
void prim(int mat[nmax][nmax], int x, int n, int m)
{
int viz[nmax], u, v, min, total = 0;
int i, j, counter;
for(i = 0; i < n; i++)
{
viz[i] = 0;
}
viz[x] = 1;
for(counter = 0; counter < m; counter++)
{
min = 999;
for(i = 0; i < n; i++)
{
if(viz[i]==1)
{
for(j = 0; j < n; j++)
{
if(viz[j]!=1)
{
if(min > mat[i][j])
{
min = mat[i][j];
u = i;
v = j;
}
}
}
}
}
viz[v] = 1;
total += min;
printf("\nMuchie gasita de la %d -> %d de weight %d", u, v, min);
}
printf("\nDimensiunea arborelui de acoperire minim: ", total);
}
을 main.c 파일은
#include <stdio.h>
#include <stdlib.h>
#include "prim.h"
void main()
{
FILE *fin;
char sursa[20];
int mat[nmax][nmax], n, m, i, j, x;
printf("\nIntroduceti fisierul sursa: ");
gets(sursa);
fin = fopen(sursa, "r");
if(fin == NULL)
{
perror("\nEroare la deschiderea fisierului!");
exit(-1);
}
fscanf(fin, "%d %d", &n, &m);
for(i = 0; i < n; i++)
{
for(j = 0; j < n; j++){
fscanf(fin, "%d", &mat[i][j]);
if(mat[i][j] == 0)
{
mat[i][j] = 999;
}
fprintf(stdout, " %3d ", mat[i][j]);
}
fprintf(stdout, "\n");
}
printf("\nIntroduceti nodul sursa: ");
scanf("%d", &x);
prim(mat, x, n, m);
}
로 작성해야 34,접미사, 그래서 *** 질문에 있지 *** 귀하의 질문 – Marcin
IN 전체 오류 메시지를 표시하십시오. 그 의견을 읽는 것은 어렵습니다! 질문 [** edit **] (http://stackoverflow.com/posts/23789100/edit) 질문에 오류를 넣어 두어야합니다! – abelenky
오류 메시지를 강조 표시하기 위해 첫 번째 단락을 다시 포맷해야합니다 (이상한 것 같습니다). 그건 그렇고, * 알고리즘 *입니다. – didierc