Ir ao conteúdo

Posts recomendados

Postado

Não consigo identificar o erro no programa:

 

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define TAM 500

void invertestring (char str[]){
    int tam = strlen(str);
    int aux;
    for (int i=0; i< tam/2; i++){
        aux = str[i];
        str[i]= str [tam-1-i];
        str[tam-1-i] = aux;
    }
    puts(str);
}

int main(){
    char str[TAM];
    scanf("%[^\n]s", str);
    invertestring(str);
    return 0;
}

 

  • Amei 1
Postado
Em 30/07/2021 às 18:28, Caio Fagundes21 disse:

mas no lugar, so da letras aleatórias

O código está mostrando o resultado correto, mas isso pode acontecer em string com acento e normalmente não se usa acentuação nesses exercícios de console.

  • Curtir 1
Postado

Olá!

 

#1 este é o algoritmo ou função: inversão dos valores nas posições equidistantes, excluído a última (tam).

Em 29/07/2021 às 19:56, Caio Fagundes21 disse:

void invertestring (char str[]){
    int tam = strlen(str);
    int aux;
    for (int i=0; i< tam/2; i++){
        aux = str[i];
        str[i]= str [tam-1-i];
        str[tam-1-i] = aux;
    }
    puts(str);
}

 

#2 esta é a "result" ou saída

Em 30/07/2021 às 18:28, Caio Fagundes21 disse:

 Result

                      Espaços: 4

                      Espaços: 6

 

mas no lugar, so da letras aleatórias

 

 

Há lógica que relacione função e "result"? Não!

E necessário saber quais os valores de ENTRADA e SAÍDA para desenvolver sua lógica (PROCESSO)!

Explique-se 

[:)] @Caio Fagundes21 

  • Curtir 1
  • Obrigado 1
Postado

@mauro_b     creio que o  @Caio Fagundes21    esteja usando outro algoritmo para mostrar o resultado , pois nele está escrevendo o número de espaços que tem na string , e nesse que ele postou não mostra esses números de espaços , mas apenas a dita string resultante da inversão feita na função   "void invertestring (char*    str )" ,   mas tudo bem isso acontece .

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...