[code] #include<stdio.h> //entrada e saida de arquivos
#include<stdlib.h>//biblioteca do sistema
#include<conio.h>//biblioteca do getch()
#include<string.h>//biblioteca para ler string
struct cadastro
{
char nome[30];
int ra;
};
int main(){
struct cadastro aluno;
FILE *trabalho; // arquivo txt
int op, procura;
char nomeArquivo[14] = "cadastro2.txt";
char caracSeparador[] = " ";
do{
system("cls");
printf("\t\t=== Faculdade Clock ===\n\n");
printf("1. Incluir Aluno\n");
printf("2. Alunos Matriculados\n");
printf("3. Consultar Aluno\n");
printf("Qualquer outra tecla para sair.\n");
printf("\nDigite sua opcao: ");
scanf("%d",&op);
system("cls");
switch(op){
// cadastro
case 1:
printf("Nome do aluno: ");
fflush(stdin);
gets(aluno.nome);
printf("Informe o RA do aluno: ");
fflush(stdin);
scanf("%d",&aluno.ra);
// se der erro na abertura do arquivo
if((trabalho = fopen(nomeArquivo, "at")) == NULL){
printf("Erro na abertura do arquivo %s.\n", nomeArquivo);
system("pause"); /* para WINDOWNS */
exit(-1); /* abandona a execucao do programa */
} else {
fprintf(trabalho, "%s", aluno.nome);
fprintf(trabalho, "%s", caracSeparador);
fprintf(trabalho, "%d", aluno.ra);
fprintf(trabalho, "%s", caracSeparador);
// fecha o arquivo
fclose(trabalho);
}
break;
// relatorio
case 2:
if((trabalho = fopen(nomeArquivo, "rt")) == NULL){
printf("Erro na abertura do arquivo %s.\n", nomeArquivo);
system("pause"); // para WINDOWNS
exit(-1); // abandona a execucao do programa
} else {
char linha[100];
int i = 1;
printf("Aluno Matriculados:\n\n");
for (; !feof(trabalho); i++) {
if (fgets(linha, 100, trabalho)){ // Se foi possível ler
printf("%s", linha);
}// fecha if
}// fecha for
fclose(trabalho);
printf("\n\n\n");
system("pause");
}
break;
case 3:
if((trabalho = fopen(nomeArquivo, "rt")) == NULL){
printf("Erro na abertura do arquivo %s.\n", nomeArquivo);
system("pause"); // para WINDOWNS
exit(-1); // abandona a execucao do programa
} else {
printf("Informe o RA do aluno\n");
scanf("%d",&procura);
while (fread(&aluno,sizeof(aluno),1,trabalho) == 1){
if (aluno.ra == procura){
printf("nome : %s\n",aluno.nome);
}
}
fclose(trabalho);
//if(procura == aluno.ra){
// fprintf(trabalho, "%s", aluno.nome);
// fprintf(trabalho, "%s", caracSeparador);
// }
}//fecha o else
default:
printf("\n\t !!! Faculdade Clock !!!\n\n\n");
system("pause");
} // fecha switch
} while(op == 1 || op == 2);
//system("pause");
return 0;
}
[/code]