Ir para conteúdo
Fórum Script Brasil

DidaFerrari

Membros
  • Total de itens

    6
  • Registro em

  • Última visita

Posts postados por DidaFerrari

  1. Bom dia, pessoal. Estou com um pequeno problema com o seguinte exercício:

    "Faça um programa C para ler um vetor com 10 elementos. Modifique o vetor de modo que o primeiro elemento passe para a última posição, e desloque todos os outros elementos uma posição para a esquerda. Imprima o vetor. Exemplo:

    Antes: 12 13 14 15 16 17 18 19 20 21

    Depois:13 14 15 16 17 18 19 19 20 21 12

    Fiz o seguinte código:

    #include "stdio.h"
    const int TAM=10;
    
    void LEITURA(int V[TAM]){
        int a;
        for(a=0;a<TAM;a++){
            printf("Entre com o %dº número:\n",a+1);
            scanf("%d",&V[a]);
        }//Fim do For
    }//Fim da função LEITURA
    
    void MOSTRAR(int V[TAM]){
        int aux, i;
        aux=V[0];    
        for(i=1;i<TAM;i++){
            V[i]=V[i+1];
            printf("%d\n",V[i]);
        }//Fim do For
            printf("%d\n",aux);
    }//Fim da função MOSTRAR
    
    main(){
        int VET[TAM];
        LEITURA(VET);
        MOSTRAR(VET);
    }//Fim da main

    Na hora que eu compilo e testo o programa, o único vetor que imprimiu a posição certa foi o último, os outros ficam todos misturados. O que posso fazer pra ficar direito? Valeu, galera!

  2. errou na chamada da função Q_VEZES

    #include <string.h> //headers padrão do C declaram assim
    #include <stdio.h>
    const int TAM=60;
    
    void LEITURA(char F[TAM]){
        printf("Entre com a frase:\n");
        gets(F);
    }//Fim da função LEITURA
    
    int Q_VEZES_A(char F[TAM]){
        int Q=0,i;
        for(i=0;i<strlen(F);i++){
            if(F[i]=='a'){
                Q=Q+1;
            }//Fim do If
        }//Fim do For
        return Q;
    }//Fim da função Q_VEZES_A
    
    int main(){
        int quant;
        char FRASE[TAM];
        LEITURA (FRASE);
        quant = Q_VEZES_A(FRASE); //errou na hora de chamar a função
        printf("Quantidade de letras a: %d.\n",quant);
    }//Fim da main

    Vish, foi falta de atenção minha! Hahaha, mas valeu mesmo, cara!

  3. E aí, pessoal, boa tarde. Como estão?

    Então, preciso de uma pequena ajuda com esse código que desenvolvi pra faculdade. A questão é:

    "Faça um programa em C para contar a ocorrência de letras "a" em uma frase lida pelo teclado de até 60 caracteres."

    #include "string.h"
    #include "stdio.h"
    const int TAM=60;
    
    void LEITURA(char F[TAM]){
        printf("Entre com a frase:\n");
        gets(F);
    }//Fim da função LEITURA
    
    int Q_VEZES_A(char F[TAM]){
        int Q=0,i;
        for(i=0;i<strlen(F);i++){
            if(F[i]=='a'){
                Q=Q+1;
            }//Fim do If
        }//Fim do For
        return Q;
    }//Fim da função Q_VEZES_A
    
    int main(){
        int quant;
        char FRASE[TAM];
        LEITURA (FRASE);
        quant= Q_VEZES_A;
        printf("Quantidade de letras a: %d.",quant);
    }//Fim da main

    Na hora de compilar, aparece a seguinte mensagem:

    string.c: Na função ‘main’:

    string.c:24:7: aviso: assignment makes integer from pointer without a cast [habilitado por padrão]

    Alguém sabe o porquê dessa mensagem? Valeu, galera!

  4. Oi, pessoal, boa tarde. Estou com um pequeno problema nesse exercício:

    Faça um programa C para ler cada temperatura do mês de setembro e informar qual a maior temperatura e em qual dia ela ocorreu.

    Ex: " A maior temperatura ocorreu no dia 22, e foi de 34º".

    A parte de verificar qual a temperatura é a maior eu consegui. Só não consigo imprimir em que posição do vetor ela está. Aqui o código que fiz:

    #include "stdio.h"
    
    const int TAM=30;
    
    void LEITURA(int V[TAM]){
        int aux;
        for(aux=0;aux<TAM;aux++){
            printf("Entre com a temperatura do dia %d:\n",aux+1);
            scanf("%d",&V[aux]);
        }//Fim Do FOR
    }//Fim da função LEITURA
    
    
    int MAIOR(int V[TAM]){
        int j,m=V[0],aux;
        for(j=1;j<TAM;j++){
            if(V[j]>m){
                m=V[j];
                }//Fim do If
        }//Fim do For
        return m;
    }//Fim da função MENOR
    
    
    main(){
        int VETOR[TAM],m;
        LEITURA (VETOR);
        m=MAIOR(VETOR);
        printf("A maior temperatura foi registrada no dia %d e foi de %dº.\n",m);
    }//Fim da main

    O que eu preciso modificar pra funcionar corretamente? Valeu, pessoal!

  5. Boa tarde, pessoal. Estou com um pequeno problema em um exercício em C, que é o seguinte:

    Escreva um programa em C que receba 10 valores inteiros, armazene em uma estrutura homogênea e imprima os valores em ordem inversa.

    De acordo com o que meu professor me ensinou, criei o seguinte código:

    #include "stdio.h"
    
    void leitura(int v[10]){
        int aux;
        for(aux=0;aux<10;aux++){
            printf("Entre com o %d número", aux+1);
            scanf("%d",v[aux]);
        }//Fim do For
    }//Fim da função leitura
    
    void mostrar(int v[10]){
        int c;
        for(c=9;c>=0;c=c-1){
            printf("%d\n",v[c]);
        }//Fim do For
    }//Fim da função mostrar
    main(){
        int vet[10];
        leitura(vet);
        mostrar(vet);
    }//Fim da main

    Na hora em que vou compilar, usando o terminal do linux, ocorre a seguinte mensagem:

    vet.c: Na função ‘leitura’:

    vet.c:7:3: aviso: formato ‘%d’ expects argument of type ‘int *’, but argument 2 has type ‘int’ [-Wformat]

    Vocês poderiam me ajudar com o código? Não consigo enxergar meu erro. Obrigado desde já, pessoal!

×
×
  • Criar Novo...