Primeiramente, foi um trabalho para faculdade..
Explicação:Código:1:#include <stdio.h> 2: 3:/* Valores distorcidos */ 4:// agudo 5:#define D_A_ACUTE -63 // Á 6:#define D_E_ACUTE -55 // É 7:#define D_I_ACUTE -51 // Í 8:#define D_O_ACUTE -45 // Ó 9:#define D_U_ACUTE -38 // Ú 10:#define D_a_ACUTE -31 // á 11:#define D_e_ACUTE -23 // é 12:#define D_i_ACUTE -19 // í 13:#define D_o_ACUTE -13 // ó 14:#define D_u_ACUTE -6 // ú 15:// circunflexo 16:#define D_A_CIRC -62 // Â 17:#define D_E_CIRC -54 // Ê 18:#define D_O_CIRC -44 // Ô 19:#define D_a_CIRC -30 // â 20:#define D_e_CIRC -22 // ê 21:#define D_o_CIRC -12 // ô 22:// grave 23:#define D_A_GRAVE -64 // À 24:#define D_a_GRAVE -32 // à 25:// til 75:/*Função que corrige distorção de caractere constante*/ 76:char cc(char c) 77:{ 78: switch (c) 79: { 80: case D_A_ACUTE: return R_A_ACUTE; // Á 81: case D_E_ACUTE: return R_E_ACUTE; // É 82: case D_I_ACUTE: return R_I_ACUTE; // Í 83: case D_O_ACUTE: return R_O_ACUTE; // Ó 84: case D_U_ACUTE: return R_U_ACUTE; // Ú 85: case D_a_ACUTE: return R_a_ACUTE; // á 86: case D_e_ACUTE: return R_e_ACUTE; // é 87: case D_i_ACUTE: return R_i_ACUTE; // í 88: case D_o_ACUTE: return R_o_ACUTE; // ó 89: case D_u_ACUTE: return R_u_ACUTE; // ú 90: case D_A_CIRC: return R_A_CIRC; // Â 91: case D_E_CIRC: return R_E_CIRC; // Ê 92: case D_O_CIRC: return R_O_CIRC; // Ô 93: case D_a_CIRC: return R_a_CIRC; // â 94: case D_e_CIRC: return R_e_CIRC; // ê 95: case D_o_CIRC: return R_o_CIRC; // ô 96: case D_A_GRAVE: return R_A_GRAVE; // À 97: case D_a_GRAVE: return R_a_GRAVE; // à 98: case D_A_TILDE: return R_A_TILDE; // Ã 99: case D_O_TILDE: return R_O_TILDE; // Õ 100: case D_N_TILDE: return R_N_TILDE; // Ñ 101: case D_a_TILDE: return R_a_TILDE; // ã 102: case D_o_TILDE: return R_o_TILDE; // õ 103: case D_n_TILDE: return R_n_TILDE; // ñ 104: case D_U_UML: return R_U_UML; // Ü 105: case D_u_UML: return R_u_UML; // ü 106: case D_C_CEDIL: return R_C_CEDIL; // Ç 107: case D_c_CEDIL: return R_c_CEDIL; // ç 108: default: return c; 109: } 110:} 111: 112:int main(void) 113:{ 114: int i; 115: char c; 116: char vogal[5] = {'a', 'e', 'i', 'o', 'u'}; 117: char agudo[10] = {'Á', 'É', 'Í', 'Ó', 'Ú', 'á', 'é', 'í', 'ó', 'ú'}; 118: char circunflexo[6] = {'Â', 'Ê', 'Ô', 'â', 'ê', 'ô'}; 119: char grave[2] = {'À', 'à'}; 120: char til[6] = {'Ã', 'Õ', 'Ñ', 'ã', 'õ', 'ñ'}; 121: char trema[2] = {'Ü', 'ü'}; 122: char cedilha[2] = {'Ç', 'ç'}; 123: 124: for (i = 0; i < 5; i++) 125: printf("Real:%c Distorcido:%c %3d\n", cc(vogal[i]), vogal[i], vogal[i]); 126: putchar('\n'); 127: 128: for (i = 0; i < 10; i++) 129: printf("Real:%c Distorcido:%c %3d\n", cc(agudo[i]), agudo[i], agudo[i]); 130: putchar('\n'); 131: 132: for (i = 0; i < 6; i++) 133: printf("Real:%c Distorcido:%c %3d\n", cc(circunflexo[i]), circunflexo[i], circunflexo[i]); 134: putchar('\n'); 135: 136: for (i = 0; i < 2; i++) 137: printf("Real:%c Distorcido:%c %3d\n", cc(grave[i]), grave[i], grave[i]); 138: putchar('\n'); 139: 140: for (i = 0; i < 6; i++) 141: printf("Real:%c Distorcido:%c %3d\n", cc(til[i]), til[i], til[i]); 142: putchar('\n'); 143: 144: for (i = 0; i < 2; i++) 145: printf("Real:%c Distorcido:%c %3d\n", cc(trema[i]), trema[i], trema[i]); 146: putchar('\n'); 147: 148: for (i = 0; i < 2; i++) 149: printf("Real:%c Distorcido:%c %3d\n", cc(cedilha[i]), cedilha[i], cedilha[i]); 150: putchar('\n'); 151: 152: c = getchar(); 153: printf("Lido:%c Real:%c\n", c, cc(c)); 154: 155: return 0; 156:}
Ele simplesmente corrige automaticamente os erros de português.
"Pesquisar, desenvolver, solucionar e comercializar serviços de web design de alta qualidade buscando a melhoria continua de web"
Hidden Content
Acredito que está faltando código ai, sugiro anexar um arquivo .c para facilitar...
[]'s
Há 1 usuários navegando neste tópico. (0 registrados e 1 visitantes)
Marcadores