Тёмный

Programa de cadastro de notas com structs e arquivos - Aula 2 

Leonardo Hipólito (Vídeo Aulas)
Подписаться 7 тыс.
Просмотров 24 тыс.
50% 1

Опубликовано:

 

26 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 19   
@thiagosousa3511
@thiagosousa3511 8 лет назад
muito boa a aula !!! estou aprendendo bastante !!!
@Gustavo9245
@Gustavo9245 4 года назад
muito obrigado sua aula é muito boa.
@TanatosGamp
@TanatosGamp 4 года назад
4:50 Na função Cadastrar também é possível usar um Loop for (ou while, dependendo da preferência) para reduzir a quantidade de printf e scanf.
@romildovieiradecarvalho3485
@romildovieiradecarvalho3485 6 лет назад
Prof., na linha 65 coluna 36 -> strcpy(alunos[i].nome, nome); ele está com o seguinte erro -> File: C:\Users\ALUNO\Documents\main.c Message: In function ´void cadastrar()´: File: C:\Users\ALUNO\Documents\main.c Message: [error] ´strcpy´ was not declared in this scope File: C:\Users/ALUNO\Documents\Makefile.win Message: recipe for target ´main.o` failed Abaixo segue o programa: #include #include #include #define MAX_ALUNOS 50 typedef struct{ char nome[50]; float notas[4]; int ativo; }Aluno; Aluno alunos[50]; void menu(); void cadastrar(); void remover(); void reprovados(); void pesquisar(); int main(int argc, char const *argv[]) { menu(); return 0; } void menu(){ system("cls"); // system("clear"); no Linux e system(cls); no Windows int op; do { printf(" 1- Cadastrar Aluno: 2- Remover Aluno "); printf(" 3- Alunos Reprovados: 4- Pesquisar Aluno "); printf(" 0- Sair "); scanf("%d", &op); getchar(); switch(op){ case 1: cadastrar(); break; } }while(op != 0); } void cadastrar(){ system("cls"); //No windows e no Linux system("clear"); char nome[50]; int notas[4]; int op; do{ printf("Nome: "); fgets(nome,sizeof(nome),stdin); printf(" (1) Bimestre: "); scanf("%f", &notas[0]); printf(" (2) Bimestre: "); scanf("%f", &notas[1]); printf(" (3) Bimestre: "); scanf("%f", &notas[2]); printf(" (4) Bimestre: "); scanf("%f", &notas[3]); for (int i = 0; i < MAX_ALUNOS; ++i) { if (alunos[i].ativo==0) { alunos[i].notas[0] = notas[0]; alunos[i].notas[1] = notas[1]; alunos[i].notas[2] = notas[2]; alunos[i].notas[3] = notas[3]; strcpy(alunos[i].nome, nome); break; } } printf(" 1 - Continuar 0 - Sair "); scanf("%d", &op); }while(op != 0); } void remover(){ } void reprovados(){ } void pesquisar(){ }
6 лет назад
Boa tarde, você deu include na biiblioteca errada, o correto é #include . Abraços
@romildovieiradecarvalho3485
@romildovieiradecarvalho3485 6 лет назад
Após observar por alguns instantes, substitui a #include por #include e foi resolvido o problema.
@minimerceloki
@minimerceloki 8 лет назад
excelente aula
@pauloalbuquerque919
@pauloalbuquerque919 5 лет назад
Leonardo brigado por responder amigo , me tira outra duvida se vc puder , compensa estudar linguagem C hoje ou passar direto pra java, Adoro C mas nao sei se compensa.
@pauloalbuquerque919
@pauloalbuquerque919 5 лет назад
Vou perguntar se vc puder responder. Amigo arquivos substitui os BD'S pra aplicacoes simples
5 лет назад
Sim
@RafaelSouza-jl5iu
@RafaelSouza-jl5iu 6 лет назад
Cara, depois de efetuar o cadastro vem certinho as opções de sair e fazer um novo cadastro, mas só que nessa opção ele pula o nome igual estava fazendo antes. O que pode ser? #include #include #include #define MAX_ALUNOS 50 typedef struct { char nome[50]; float notas[4]; int ativo; } Aluno; Aluno alunos[MAX_ALUNOS]; void menu(); void cadastrar(); void remover(); void reprovados(); void pesquisar(); int main (int argc, char const *argv[]) { menu(); return 0; } void menu (){ system("cls"); int op; do{ printf(" 1 - Cadastrar Aluno 2 - Remover Aluno"); printf(" 3 - Alunos Reprovados 4 - Pesquisar Aluno "); printf(" 0 - Sair "); scanf("%d", &op); getchar(); switch(op){ case 1: cadastrar(); break; } }while(op!=0); } void cadastrar(){ system("cls"); char nome[50]; float notas[4]; int op; int i; do{ printf(" Nome: "); fgets(nome, sizeof(nome), stdin); printf(" 1 Bimestre: "); scanf("%f", &notas[0]); printf(" 2 Bimestre: "); scanf("%f", &notas[1]); printf(" 3 Bimestre: "); scanf("%f", &notas[2]); printf(" 4 Bimestre: "); scanf("%f", &notas[3]); for (i=0; i
6 лет назад
sempre que pular algum scanf coloque 1 ou dois getchar() logo antes do scanf, isso ocorre porque algumas vezes o scanf pega os dados que estao no buffer ao invés de pedi para você digitar. o getchar evita que isto aconteça
@RafaelSouza-jl5iu
@RafaelSouza-jl5iu 6 лет назад
Encontrei assistindo as outras aulas kkkk Vllw
@RafaelSouza-jl5iu
@RafaelSouza-jl5iu 6 лет назад
@ O meu agora está dando problema na área de pesquisar um aluno. Faço o cadastro do aluno, ele aparece na lista, mas quando vou pesquisar ele não me traz o valor da pesquisa. Sabe o que pode ser?
@julianasilva2186
@julianasilva2186 5 лет назад
ótima aula! Mas e a explicação do arquivo?
@claricesantos7617
@claricesantos7617 7 лет назад
cade arquivos ?
@thiagowillian3565
@thiagowillian3565 7 лет назад
Professor blz? primeiramente parabéns pelas aulas ... vc tem o código fonte para enviar? No meu quando aperto a função 1 apenas troca de linha e não aparece o formulário para preencher ...:(
@lassuli
@lassuli 6 лет назад
Para resolver o problema aqui eu declarei a variável i antes do for, e então resolveu. int i; for (i=0; i< MAX_EMPRESAS; ++i)
@patriciofilho7024
@patriciofilho7024 6 лет назад
Nada de arquivos.
Далее
Физика пасты Карбонара 🧪🔬
00:57
linguagem c structs arquivos parte3
9:24
Просмотров 13 тыс.
APC - Linguagem C - Structs e Arquivos - parte 1
10:39
How is this Website so fast!?
13:39
Просмотров 616 тыс.
Microsoft Makes Windows Worse With AI
9:34
Просмотров 153 тыс.
Structs aninhadas e vetor de struct em C
12:59
Просмотров 40 тыс.