Faça um programa que leia uma palavra (máximo de 50 letras) e some 1 no valor ASCII de cada caractere da palavra. Imprima a string resultante.

Passo 1

O enunciado pede um programa que leia uma palavra de até 50 letras, some 1 ao código ASCII de cada caractere e imprima a nova string. O conteúdo principal é manipulação de strings e conversão entre caractere e código ASCII, usando um laço de repetição para percorrer cada posição da string.

Passo 2

Declarar um vetor de caracteres com capacidade para 51 posições (50 letras mais o caractere nulo ‘\0’).
Ler a palavra do usuário usando scanf limitando a leitura a 50 caracteres: scanf("%50s", str); isso garante que não haverá overflow.

Passo 3

Percorrer cada caractere até encontrar o terminador ‘\0’. A cada iteração, converter o caractere em inteiro implicitamente, somar 1 e converter de volta para char: str[i] = str[i] + 1.

Passo 4

Após ajustar todos os caracteres, imprimir a string resultante com printf("%s\n", str);

Resposta

#include <stdio.h>
int main() {
char str[51];
scanf("%50s", str);
for (int i = 0; str[i] != '\0'; i++) {
    str[i] = str[i] + 1;
}

printf("%s\n", str);
return 0;
}

Exercícios relacionados