Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- typedef struct list{
- char nome[81];
- char mat[81];
- char turma;
- float p1,p2,p3;
- list* next;
- }Lista;
- Lista* new_list(){
- return NULL;
- }
- Lista* lst_insereord (Lista* lst, char* nome, char* matricula, char turma, float p1, float p2, float p3){
- Lista* new_l;
- Lista* ant = NULL;
- Lista* p = lst;
- while(p != NULL && strcmp(nome,p->nome)>=0){
- ant = p;
- p = p->next;
- }
- new_l = (Lista*)malloc(sizeof(Lista));
- strcpy(new_l->nome,nome);
- strcpy(new_l->mat,matricula);
- new_l->p1 = p1;
- new_l->p2 = p2;
- new_l->p3 = p3;
- new_l->turma = turma;
- if(ant == NULL){
- new_l->next = lst;
- lst = new_l;
- }
- else{
- new_l->next = ant->next;
- ant->next = new_l;
- }
- return lst;
- }
- void lst_print(Lista* lst){
- Lista* aux;
- for(aux = lst; aux!=NULL; aux = aux->next){
- printf("Conteudo %s\n", aux->nome);
- }
- }
- int lst_void (Lista* lst){
- return (lst == NULL);
- }
- void lst_destroy(Lista* lst){
- Lista* aux = lst;
- while(aux != NULL){
- Lista* t = aux->next;
- free(aux);
- aux = t;
- }
- }
- int main(void){
- Lista* list;
- list = new_list();
- char nome[81],mat[81];
- fgets(nome,81,stdin);
- fgets(mat,81,stdin);
- list = lst_insereord(list,nome,mat,'1',3.1,3.2,3.3);
- fgets(nome,81,stdin);
- fgets(mat,81,stdin);
- list = lst_insereord(list,nome,mat,'3',4.1,4.9,10.0);
- fgets(nome,81,stdin);
- fgets(mat,81,stdin);
- list = lst_insereord(list,nome,mat,'3',4.1,4.9,10.0);
- lst_print(list);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement