Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
/* * 1) Preparar um procedimento TRIM para aceitar como parâmetro uma cadeia de caracteres arbitrária * e retornar uma cadeia contendo somente os caracteres alfabéticos da cadeia original. * Todos os caracteres brancos, sinais de pontuação, números e caracteres especiais devem ser removidos. * 2) Projetar um procedimento REVERSO para aceitar como parâmetro uma cadeia de caracteres arbitrária * e retornar uma cadeia com o mesmo comprimento, * na qual o primeiro caractere de entrada é o último de saída e assim por diante. */ /* * File: main.cpp * Author: joao * * * Created on 28 de Julho de 2017, 16:26 */ #include <cstdlib> #include<string.h> #include<stdio.h> #include <ctype.h> using namespace std; /*void trimStr(char[],char[]) * @param str1 Cadeia de entrada * @param str2 Cadeia de saida * Recebe uma cadeia de caracteres e retorna por parâmetro uma nova cadeia sem * os caracteres não alfabéticos. */ void trimStr(char str1[], char str2[]) { int len = strlen(str1), i = 0, k = 0; if (len > 0) { while (i < len) { if (isalpha(str1[i])) { str2[k++] = str1[i]; } i++; } str2[k] = '\0'; } } /* void inverterStr(char str1[]) * @param str1 Cadeia de entrada * Recebe uma cadeia de caracteres como parâmetro e reverte seu contúdo */ void inverterStr(char str1[]) { char aux; int len = strlen(str1), k, i = 0, meio; if (len > 0) { meio = len / 2; k = len - 1; while (i < meio) { aux = str1[k]; str1[k] = str1[i]; str1[i] = aux; i++; k--; } } } int main(int argc, char** argv) { char strTeste[38], strTeste1[38]; char * st; strcpy(strTeste, "* >> Inverteu esta buceta 123! << * "); printf("\n[%s] \n", strTeste); trimStr(strTeste,strTeste1); printf("\n[%s] \n",strTeste1); inverterStr(strTeste); printf("\n[%s] \n", strTeste); }