ho fatto questo programma in c ma non funziona e non so come fare..il problema penso sia nell'int main.. quando eseguo il programma poi mi da errore segmentation fault!
il programma si riferisce agli esercizi 2-3
qui c'è il testo
e qui il programma
codice:
#include<stdio.h>
#include <string.h>
char Funzione (char numero[11] ,char m[5][80]);
int ConvertiNumero (char numero [1], int i);
int main ( char valore [10])
{
char cifra [5][80];
printf("inserisci il valore \n");
scanf("%s", valore);
Funzione (valore, cifra);
printf("%s", Funzione);
}
char Funzione (char numero[11] ,char m[5][80])
{
int i,j, q=0, n;
char num[1], mat[5][8];
char nome[10]="file.txt";
FILE*fp;
for(i=0; numero[i]<strlen(numero); i++)
{
n=ConvertiNumero (numero, i);
nome[strlen(nome)-5]='n';
fp=fopen(nome,"r");
for(i=0;i<5;i++)
for(j=0;j<8;j++)
fscanf(fp,"%c", &mat[i][j]);
m[5][q]=mat[i][j];
}
fclose(fp);
return m[5][q];
q+=5;
}
int ConvertiNumero (char num[1], int i)
{
if (num[i]=='0')
return 0;
else if (num[i]=='1')
return 1;
else if (num[i]=='2')
return 2;
else if (num[i]=='3')
return 3;
else if (num[i]=='4')
return 4;
else if (num[i]=='5')
return 5;
else if (num[i]=='6')
return 6;
else if (num[i]=='7')
return 7;
else if (num[i]=='8')
return 8;
else if (num[i]=='9')
return 9;
}