Jump to content
Fórum Script Brasil
  • 0

Reaproveitamento de código C


José Fraga
 Share

Question

Boa noite Galera. Venho pedir umas dicas pois estou começando no mundo da programação, porém estou com muitas dificuldades para resolver  o problema.

Aqui tenho uma um vetor de struct do tipo inteiro.  Como faço para receber ao invés de valor inteiro, receber strings( preciso receber cinco cores).

Já tentei alterar e transformar num vetor de strings, alterando o tipo, mas não tive sucesso.

 

Ficarei muito agradecido se puderem me ajudar nesta questão.

 

Obrigado

#include <stdio.h>
#include <stdlib.h>

//Declaração da constante que contem o tamnaho da pilha
#define TAM 5

//Estrutura da pilha
struct tp_pilha{
    int dados[TAM];
    int ini;
    int topo;
};
//Variável global
struct tp_pilha pilha;
int op;

//Prototipação
void adicionar_pilha();
void remover_pilha();
void mostrar_pilha();
void menu_mostrar();

//Função principal main
int main(){
op = 1;
pilha.ini = 0;
pilha.topo = 0;
while (op != 0){
    system("cls");
    mostrar_pilha();
    menu_mostrar();
    scanf("%d", &op);
    switch (op){
    case 1:
        adicionar_pilha();
    break;

    case 2:
        remover_pilha();
    break;
    }
}
return 0;
}
//Adicionando um elementos no final da pilha
void adicionar_pilha(){
    if (pilha.topo == TAM){
        printf("\nA pilha esta cheia,  impossivel empilhar novo elemento!\n\n");
        system("pause");
    }else{
        printf("\nDigite o valor a ser empilhado: ");
        scanf("%d", pilha.dados[pilha.topo]);
        pilha.topo++;
    }
}
//Retirar o último elemento da pilha
void remover_pilha(){
    if (pilha.ini == pilha.topo){
        printf("\nA pilha esta vazia, não há nada para ser desempilhado!\n\n");
        system("pause");
    }else {
        pilha.dados[pilha.topo-1] = 0;
        pilha.topo--;
    }
}

//Mostrar o contéudo da pilha
void mostrar_pilha(){
    printf("\n[ ");
    for(int i =0; i < TAM; i++){
        printf("%d ", pilha.dados[i]);
    }
    printf(" ]\n");
}
//Mostrar o menu opção
void menu_mostrar(){
    printf("\nEscolha uma opcao: \n");
    printf("1 -Empilhar\n");
    printf("2 -Desempilhar\n");
    printf("0 -Sair\n");
    printf("\n");

}

 

 

Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.7k
    • Total Posts
      648.4k
×
×
  • Create New...