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 _fila fila;
- struct _fila {
- char* senha;
- fila* prox;
- };
- fila* cria_fila() {
- return NULL;
- }
- int vazia(fila *fil) {
- return (fil == NULL);
- }
- fila* insere_fila(fila *fil, char *senha) {
- fila* novo = (fila*) malloc(sizeof(fila));
- fila* aux = fil;
- novo->senha = senha;
- aux->prox = novo;
- return aux;
- }
- fila* retira_fila(fila* fil) {
- fila *aux = fil;
- fil = aux->prox;
- free(aux);
- return fil;
- }
- void fila_imprime(fila* fil) {
- fila* aux;
- for (aux = fil; aux != NULL; aux = aux->prox) {
- printf("%s ", aux->senha);
- }
- }
- void leia_string(char *s) {
- char c;
- int i = 0;
- do {
- c = getchar();
- if(c != '\n')
- s[i] = c;
- i++;
- }while(c != '\n' && c != '\0');
- }
- int main(int argc, char const *argv[]) {
- char *senha;
- fila *fil;
- int aux1, aux2;
- senha = malloc(sizeof(char));
- fil = cria_fila();
- while(1){
- printf("Digite 0 para terminar a execução\n");
- leia_string(senha);
- senha[0]=toupper(senha[0]);
- aux1 = strncmp(senha, "P", 1);
- aux2 = strncmp(senha, "N", 1);
- if(aux1 == 0 || aux2 == 0){
- fil = insere_fila(fil, senha);
- }
- else if(strcmp("Atendimento", senha) == 0){
- fil = retira_fila(fil);
- }
- else if(strcmp("0", senha) == 0)
- break;
- }
- if(!vazia(fil)) {
- printf("NENHUM CLIENTE\n");
- }
- else {
- fila_imprime(fil);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement