Conta caracteres
Publicado por Danilo Renato da Silva (última atualização em 08/06/2012)
[ Hits: 6.712 ]
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); } }
Ajustando o sincronismo da legenda com o filme
Controle de Funcionários (Básico)
Nenhum comentário foi encontrado.
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
firefox nao guarda meus logins nos sites (1)
Instalar debian testing (13) "por cima" do debian 12 (2)
Erro de segmentação «Segmentation fault (core dumped)» ao retornar obj... (1)