Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

JoaoNascimento

Erro ao tentar escrver em ficheiro..

Mensagens Recomendadas

JoaoNascimento

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");
	}
}

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Localhost

As tuas dúvidas costumam ser muito vagas. Não podes simplesmente deixar aqui o código e esperar que os outros procurem pelo erro.

Se precisares de debuggers avisa que o pessoal indica-te um.


here since 2009

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.