Conta caracteres
Publicado por Danilo Renato da Silva (última atualização em 08/06/2012)
[ Hits: 6.619 ]
Homepage: http://widgetscomcafe.blogspot.com/ https://www.linkedin.com/in/danilorenatosilva
Este script calcula a frequência com que determinado caracter aparece em um arquivo texto, mostrando no final a porcentagem desta frequência.
#include <stdio.h> #include <stdlib.h> #include <ctype.h> float calculaPorcentagem(int num, int total) { return num / (total / 100.0f); } int main() { FILE *arq; char nome_arq[20]; float porcentagem; char c , c_aux; int total = 0, total_geral = 0; printf("Digite o nome do arquivo texto.....: "); gets(nome_arq); while(1) { printf("Digite o caracter [Enter para sair]: "); fflush(stdin); c = getchar(); //armazenamos o caracter digitado na variavel c if(c == '\n') //se nao digitarmos nenhum caracter (enter) saimos do loop break; arq = fopen(nome_arq, "r"); //abrimos o arquivo em modo de leitura if(arq == NULL) //verificamos se o arquivo existe { printf("Arquivo nao encontrado!"); break; } total = 0; total_geral = 0; while((c_aux = fgetc(arq)) != EOF) //armazenamos o caracter do arquivo na variavel c_aux e avançamos para o proximo { //até atingir o fim do arquivo if(toupper(c_aux) == toupper(c)) //queremos comparar o caracter atual lido do arquivo com o caracter digitado total++; //tanto maiusculo quanto minusculo total_geral++; //incrementamos o numero de caracteres presentes no arquivo } fclose(arq); //fechamos o arquivo porcentagem = calculaPorcentagem(total, total_geral); //calculamos a porcentagem que o caracter digitado aparece no arquivo printf("O caracter \'%c\' aparece %.2f%% no arquivo %s\n\n", c, porcentagem, nome_arq); } }
dog - semelhante ao cat do Linux
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Melhorando a precisão de valores flutuantes em python[AJUDA] (9)
GLPI - Configuração de destinatário com conta Microsoft Exchange (0)
Vou voltar moderar conteúdos de Dicas e Artigos (3)
OpenVPN no MACBOOK conecta mas não pinga pastas de rede compartilhada ... (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta