Jump to content

Erro ao tentar escrver em ficheiro..


JoaoNascimento
 Share

Recommended Posts

A tentar escrever num ficheiro uam determinada informação que o utilizador pesquise deixa de funcionar.

Codigo:

void psq_ano(char curso[50],char nomeuc[N][50],char area_cientifica[N][50], int ects[N], int opcional[N],char doc_res[N][50],float docentes[N],int ano[N],int semestre[N],float turm_t[N],float turm_tp[N],float turm_p[N],float turm_pl[N],float turm_ac[N],float turm_ot[N],float turm_s[N],float t[N],float p[N],float tp[N],float pl[N],float ac[N],float ot[N],float s[N])
{
int ano_ref, i, op;
char ficheiro[50];
FILE *pf;

printf("Insira o ano do curso: \n");
scanf("%d",&ano_ref);

printf("                                                       Carga Horária\n");
printf("           Unidade curricular   Area Cientifica\tDocente Resp.\tDocentes\tAno\tSem\tT\tTP\tP\tPL\tAC\tOT\tS\tT\tP\tTP\tPL\tAC\tOT\tS\n");
for(i=0;i<N;i++)
{
	if (ano[i]==ano_ref)
	{
		printf("%30s\t%10s\t%2d\t%2d\t%10s\t%2f\t%2d\t%2d\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\n",nomeuc[i],area_cientifica[i],ects[i],opcional[i],doc_res[i],docentes[i],ano[i],semestre[i],turm_t[i],turm_tp[i],turm_p[i],turm_pl[i],turm_ac[i],turm_ot[i],turm_s[i],&t[i],&p[i],tp[i],pl[i],ac[i],ot[i],s[i]);
	}
}
system("pause");

//Guardar os dados num ficheiro de texto
fflush(stdin);
system("cls");
printf("Deseja guardar a informação num ficheiro de texto: \n");
printf("\t1 - Sim\n");
printf("\t2- Nao\n");
scanf("%d",&op);

	switch (op)
	{
	case 1:
	{
		fflush(stdin);
		puts("Introduza o nome com o qual quer gravar o ficheiro: ");
		gets(ficheiro);

		//Abertura do ficheiro
		pf=fopen(ficheiro,"w");

		if( pf == NULL )
		{
			printf("Erro de abertura\n");
		}
		else
		{
			for( i = 0 ; i < N ; i++ )
			{
				if(ano[i] == ano_ref)
				{
					fprintf(pf,"%s\t%s\t%s\t%d\t%d\t%s\t%f\t%d\t%d\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\t%f\n" ,curso[i],nomeuc[i],area_cientifica[i],ects[i],opcional[i],doc_res[i],docentes[i],ano[i],semestre[i],turm_t[i],turm_tp[i],turm_p[i],turm_pl[i],turm_ac[i],turm_ot[i],turm_s[i],t[i],p[i],tp[i],pl[i],ac[i],ot[i],s[i]);
				}
			}
		}
	}
	case 2: printf("Adeus!\n");
	}
}
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.