Você está na página 1de 14

1)

#include <stdio.h>

int main() {

FILE *arquivo;

int i;

arquivo = fopen("dados.txt", "w");

if (arquivo == NULL) {

printf("Erro ao abrir o arquivo.");

return 1;

for (i = 0; i <= 100; i += 10) {

fprintf(arquivo, "%d\n", i);

fclose(arquivo);

printf("Contagem de 0 a 100 de 10 em 10 foi escrita no arquivo 'dados.txt'.\n");

return 0;

2)

#include <stdio.h>

int main() {
if (rename("dados.txt", "MATRICULADOS.TXT") == 0) {

printf("Arquivo renomeado com sucesso.\n");

} else {

printf("Erro ao renomear o arquivo.\n");

return 1;

return 0;

3)

#include <stdio.h>

struct Aluno {

int matricula;

char nome[50];

char curso[50];

float nota1;

float nota2;

};

int main() {

FILE *arquivo;

struct Aluno aluno;

arquivo = fopen("ALUNOS.DAT", "wb");


if (arquivo == NULL) {

printf("Erro ao abrir o arquivo.");

return 1;

printf("Informe a matrícula do aluno: ");

scanf("%d", &aluno.matricula);

printf("Informe o nome do aluno: ");

scanf("%s", aluno.nome);

printf("Informe o curso do aluno: ");

scanf("%s", aluno.curso);

printf("Informe a nota 1 do aluno: ");

scanf("%f", &aluno.nota1);

printf("Informe a nota 2 do aluno: ");

scanf("%f", &aluno.nota2);

fwrite(&aluno, sizeof(struct Aluno), 1, arquivo);

fclose(arquivo);

printf("Registro do aluno gravado no arquivo 'ALUNOS.DAT'.\n");

return 0;

}
4)

#include <stdio.h>

struct Aluno {

int matricula;

char nome[50];

char curso[50];

float nota1;

float nota2;

};

int main() {

FILE *arquivo;

struct Aluno aluno;

int matriculaBusca;

char continuar;

arquivo = fopen("ALUNOS.DAT", "rb+");

if (arquivo == NULL) {

printf("Erro ao abrir o arquivo.");

return 1;

do {
printf("\nInforme a matrícula do aluno: ");

scanf("%d", &aluno.matricula);

fseek(arquivo, 0, SEEK_SET); // Move o cursor para o início do arquivo

while (fread(&aluno, sizeof(struct Aluno), 1, arquivo) == 1) {

if (aluno.matricula == matriculaBusca) {

printf("Já existe um aluno com essa matrícula. Tente novamente.\n");

continue; // Volta ao início do loop para pedir outra matrícula

printf("Informe o nome do aluno: ");

scanf("%s", aluno.nome);

printf("Informe o curso do aluno: ");

scanf("%s", aluno.curso);

printf("Informe a nota 1 do aluno: ");

scanf("%f", &aluno.nota1);

printf("Informe a nota 2 do aluno: ");

scanf("%f", &aluno.nota2);

fseek(arquivo, 0, SEEK_END);

fwrite(&aluno, sizeof(struct Aluno), 1, arquivo);

printf("\nDeseja adicionar outro aluno? (S/N): ");

scanf(" %c", &continuar);


} while (continuar == 'S' || continuar == 's');

fclose(arquivo);

printf("\nAlunos adicionados com sucesso no arquivo 'ALUNOS.DAT'.\n");

return 0;

5)

#include <stdio.h>

struct Aluno {

int matricula;

char nome[50];

char curso[50];

float nota1;

float nota2;

};

int main() {

FILE *arquivo;

struct Aluno aluno;

int matriculaBusca;

char continuar;

arquivo = fopen("ALUNOS.DAT", "rb+");


if (arquivo == NULL) {

printf("Erro ao abrir o arquivo.");

return 1;

do {

printf("\nInforme a matrícula do aluno para alterar as notas: ");

scanf("%d", &matriculaBusca);

fseek(arquivo, 0, SEEK_SET);

int encontrado = 0; // Variável para indicar se o aluno foi encontrado

while (fread(&aluno, sizeof(struct Aluno), 1, arquivo) == 1) {

if (aluno.matricula == matriculaBusca) {

printf("\nNovas notas para o aluno %s:\n", aluno.nome);

printf("Informe a nova nota 1: ");

scanf("%f", &aluno.nota1);

printf("Informe a nova nota 2: ");

scanf("%f", &aluno.nota2);

fseek(arquivo, -sizeof(struct Aluno), SEEK_CUR);

fwrite(&aluno, sizeof(struct Aluno), 1, arquivo);

encontrado = 1;

break;

if (!encontrado) {
printf("Aluno com matrícula %d não encontrado.\n", matriculaBusca);

printf("\nDeseja alterar as notas de outro aluno? (S/N): ");

scanf(" %c", &continuar);

} while (continuar == 'S' || continuar == 's');

fclose(arquivo);

printf("\nNotas dos alunos alteradas com sucesso no arquivo 'ALUNOS.DAT'.\n");

return 0;

6)

#include <stdio.h>

#include <string.h>

struct Aluno {

int matricula;

char nome[50];

char curso[50];

float nota1;

float nota2;

};
int main() {

FILE *arquivo;

struct Aluno aluno;

int matriculaBusca;

char continuar;

arquivo = fopen("ALUNOS.DAT", "rb+");

if (arquivo == NULL) {

printf("Erro ao abrir o arquivo.");

return 1;

do {

printf("\nInforme a matrícula do aluno para alterar o curso: ");

scanf("%d", &matriculaBusca);

fseek(arquivo, 0, SEEK_SET);

int encontrado = 0; // Variável para indicar se o aluno foi encontrado

while (fread(&aluno, sizeof(struct Aluno), 1, arquivo) == 1) {

if (aluno.matricula == matriculaBusca) {

printf("\nNovo curso para o aluno %s:\n", aluno.nome);

printf("Informe o novo curso: ");

scanf("%s", aluno.curso);

fseek(arquivo, -sizeof(struct Aluno), SEEK_CUR);

fwrite(&aluno, sizeof(struct Aluno), 1, arquivo);

encontrado = 1;
break;

if (!encontrado) {

printf("Aluno com matrícula %d não encontrado.\n", matriculaBusca);

printf("\nDeseja alterar o curso de outro aluno? (S/N): ");

scanf(" %c", &continuar);

} while (continuar == 'S' || continuar == 's');

fclose(arquivo);

printf("\nCurso dos alunos alterado com sucesso no arquivo 'ALUNOS.DAT'.\n");

return 0;

7)

#include <stdio.h>

struct Aluno {

int matricula;

char nome[50];

char curso[50];
float nota1;

float nota2;

};

int main() {

FILE *arquivo;

FILE *arquivoTemp;

struct Aluno aluno;

arquivo = fopen("ALUNOS.DAT", "rb");

if (arquivo == NULL) {

printf("Erro ao abrir o arquivo original.");

return 1;

arquivoTemp = fopen("ALUNOS_TEMP.DAT", "wb");

if (arquivoTemp == NULL) {

printf("Erro ao abrir o arquivo temporário.");

fclose(arquivo);

return 1;

for maior ou igual a 6.0

while (fread(&aluno, sizeof(struct Aluno), 1, arquivo) == 1) {

float media = (aluno.nota1 + aluno.nota2) / 2;

if (media >= 6.0) {

fwrite(&aluno, sizeof(struct Aluno), 1, arquivoTemp);

}
}

fclose(arquivo);

fclose(arquivoTemp);

remove("ALUNOS.DAT");

rename("ALUNOS_TEMP.DAT", "ALUNOS.DAT");

printf("Alunos reprovados excluídos com sucesso.\n");

return 0;

8)

#include <stdio.h>

struct Aluno {

int matricula;

char nome[50];

char curso[50];

float nota1;

float nota2;

};

int main() {

FILE *arquivo;

struct Aluno aluno;

arquivo = fopen("ALUNOS.DAT", "rb");


if (arquivo == NULL) {

printf("Erro ao abrir o arquivo.");

return 1;

printf("Alunos cadastrados:\n");

printf("Matrícula | Nome | Média\n");

printf("---------------------------------------------\n");

while (fread(&aluno, sizeof(struct Aluno), 1, arquivo) == 1) {

float media = (aluno.nota1 + aluno.nota2) / 2;

printf("%-9d | %-30s | %.2f\n", aluno.matricula, aluno.nome, media);

fclose(arquivo);

return 0;

9)

#include <stdio.h>

struct Aluno {

int matricula;

char nome[50];

char curso[50];

float nota1;

float nota2;
};

int main() {

FILE *arquivo;

struct Aluno aluno;

arquivo = fopen("ALUNOS.DAT", "rb");

if (arquivo == NULL) {

printf("Erro ao abrir o arquivo.");

return 1;

printf("Alunos cujos nomes começam com a letra 'M':\n");

printf("Matrícula | Nome | Curso\n");

printf("---------------------------------------------\n");

while (fread(&aluno, sizeof(struct Aluno), 1, arquivo) == 1) {

if (aluno.nome[0] == 'M') {

printf("%-9d | %-30s | %s\n", aluno.matricula, aluno.nome, aluno.curso);

fclose(arquivo);

return 0;

Você também pode gostar