Conta caracteres
Publicado por Danilo Renato da Silva (última atualização em 08/06/2012)
[ Hits: 6.874 ]
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);
}
}
FileCopy - Copiador de Arquivo de Texto
Editar o arquivo /etc/rc.d/rc.local
Contando a quantidade de palavras de um arquivo texto
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Linux é a solução para o fim do Windows10? (2)
Problemas com Driver NVIDIA (4)
Programa fora de escala na tela do pc (28)
converter algoritmo C++ em C? (1)
Fedora KDE plasma 42 X Módulo de segurança BB (Warsaw-2) (1)









