Faça um programa em C no qual o usuário irá digitar uma frase ou palavra, após isso execute as seguintes ações:
a.) Trocar todas as letras “A” ou “a” pelo caractere &.
b.) Verificar se a frase ou palavra é palíndroma ou não.
c.) Mostrar na tela quantos espaços, quantos dígitos e quantos pontos existem na frase ou palavra.
Soluções para a tarefa
Resposta:
a)
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
/**
a.) Trocar todas as letras “A” ou “a” pelo caractere &.
**/
int main() {
char palavra[50];
printf("Informe uma palavra: ");
fgets(palavra, 49, stdin);
for(int i = 0; i < strlen(palavra); ++i){
if(palavra[i] == 'a' || palavra[i] == 'A'){
palavra[i] = '&';
}
printf("%c", palavra[i]);
}
return 0;
}
b)
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
/**
b.) Verificar se a frase ou palavra é palíndroma ou não.
**/
int main(){
char palavra[50];
int i, tam, diferentes = 0;
printf("Infrome uma palavra: ");
scanf("%s", palavra);
tam = strlen(palavra);
tam--;
i = 0;
while(tam >= i){
if(palavra[i] != palavra[tam]) // conta as letras diferentes
diferentes ++;
i++;
tam--;
}
if(diferentes == 0)
printf("Eh palindroma.\n");
else
printf("Nao eh palindroma.\n");
return 0;
}
c)
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
/**
c.) Mostrar na tela quantos espaços, quantos dígitos e quantos pontos existem na frase ou palavra.
**/
int main() {
char palavra[50];
int i, numcaractere = 0, espaco = 0, ponto = 0;
printf("Digite uma palavra: ");
gets(palavra);
while(palavra[numcaractere] != '\0'){
++numcaractere;
}
for(i = 0; i < strlen(palavra); ++i){
if(palavra[i] == ' '){
espaco++;
}
if(palavra[i] == '.'){
ponto++;
}
}
printf("O palavra %s possui %d caracteres ao total.\nPossui %d ponto(s)\nPossui %d espaco(s).\n", palavra, numcaractere, ponto, espaco);
return 0;
}