TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

ATPS Programação Estruturada II

Dissertações: ATPS Programação Estruturada II. Pesquise 860.000+ trabalhos acadêmicos

Por:   •  9/10/2013  •  1.498 Palavras (6 Páginas)  •  729 Visualizações

Página 1 de 6

FACULDADE ANHANGUERA (UNIABC)

ATPS – ETAPA I

Atividade de Autodesenvolvimento apresentado à Disciplina Programação Estruturada II da Faculdade Anhanguera de Santo André, como parte da avaliação na referida disciplina do Curso de Ciência da Computação.

ORIENTADOR: Prof º. Peter Rauer

SANTO ANDRÉ/SP

2013

Códigos do Arquivo – libCodeCount.c

//FUNCAO QUE CONTA AS LINHAS:

void ccRun (FILE *arquivo, int *linhas_totais, int *linhas_comentario, int *linhas_vazias)

{

//VARS QUE A FUNCAO VAI UTILIZAR:

int caractere,ultimo,tamanho,comentario_longo = 0, primeiro_caractere = 1;

//SETA OS VALORES DAS VARS COMO 0;

*linhas_totais = 0;

*linhas_comentario = 0;

*linhas_vazias = 0;

//LOOP QUE VARRE O ARQUIVO JÁ ABERTO:

do

{

ultimo = caractere;

caractere = fgetc(arquivo);

/*

AQUI CONTAMOS OS COMENTÁRIOS (SIMPLES E DE BLOCO):

*/

//PEGA COMENTÁRIO SIMPLES (//)

if(caractere == '/' && ultimo == '/' && comentario_longo == 0)

{

*linhas_comentario = *linhas_comentario + 1;

}

//PEGA O COMECO DOS COMENTARIOS DE BLOCO (/*)

if(caractere == '*' && ultimo == '/' && comentario_longo == 0)

{

comentario_longo = 1;

}

//PARA TODA LINHA DEPOIS QUE A VAR COMENTARIO_LONGO FOR SETADA COMO 1, SERÁ CONTADA COMO COMENTÁRIO:

if(caractere == '\n' && comentario_longo == 1)

{

*linhas_comentario = *linhas_comentario + 1;

}

//PEGA O FIM DOS COMENTARIOS DE BLOCO (*/)

if(caractere == '/' && ultimo == '*' && comentario_longo == 1)

{

comentario_longo = 0;

*linhas_comentario = *linhas_comentario + 1;

}

/*

AQUI CONTAMOS O TOTAL DE LINHAS E LINHAS VAZIAS:

*/

if(caractere == '\n')

{

*linhas_totais = *linhas_totais + 1;

}

//CONTA LINHA VAZIA:

if(caractere == '\n' && ultimo == '\n')

{

*linhas_vazias = *linhas_vazias + 1;

}

} while(caractere != EOF);//FIM DO LOOP QUE VARRE O ARQUIVO:

//CONTA + UMA LINHA:

*linhas_totais = *linhas_totais + 1;

}

Códigos do Arquivo – libCodeCount.h

//PROTÓTIPO DA FUNCAO CCRUN:

void ccRun (FILE *arquivo, int *linhas_totais, int *linhas_comentario, int *linhas_vazias);

Códigos do Arquivo – mainCodeCount.h

#include <stdio.h>

#include <stdlib.h>

#include <locale.h>

#include "libCodeCount.h"

#include "libCodeCount.c"

int main(int argc, char const *argv[])

{

//SETA AS CONFIGURACOES REGIONAIS DO PROGRAMA PARA PORTUGUES:

setlocale(LC_ALL, "Portuguese");

//SETA AS VARIÁVEIS DO PROGRAMA:

FILE *arquivo;

int linhas_totais, linhas_vazias, linhas_comentario, i, silent = 0, comment = 0;

//SE SOMENTE FOR PASSADO UM PARÂMETRO, EXIBE ALGUMAS INFORMACOES DO PROGRAMA E SAI DO MESMO:

if (argc == 1) {

printf("CodeCount - Software que conta o numero de linhas no arquivo.\n");

...

Baixar como (para membros premium)  txt (5.7 Kb)  
Continuar por mais 5 páginas »
Disponível apenas no TrabalhosGratuitos.com