ATPS - Programacao Em Banco De Dados
Casos: ATPS - Programacao Em Banco De Dados. Pesquise 861.000+ trabalhos acadêmicosPor: betosabaaluno • 9/11/2014 • 2.277 Palavras (10 Páginas) • 333 Visualizações
Introdução.
Com a realidade do grande numero de programas do tipo “console” que apresentam muita simplicidade na interface gráfica, mas que muitas vezes desempenham papel de grande importância no cotidiano da gestão de sistemas operacionais (SO) e arquivos. Diante disso cabe explorar o ciclo completo de desenvolvimento de determinados aplicativos.
Etapa 1
Em linguagem C temos duas possibilidades de comentários no código fonte, o que se caracteriza por ter em seu inicio de linha duas barras “//” e que atende a comentários curtos que não precisão de uma segunda linha para tornar objetiva a documentação do código. Por outro lado, quando há necessidade de varias linhas de comentário pode –se usar a segunda opção de identificador, o “/**/”, onde se redige o texto entre os asteriscos e se posiciona um “/*” no inicio do comentário e um “*/” no final do mesmo.
O objetivo inicial é fazer com que o projeto MainCodCount faça a contagem de linhas de um arquivo.c.
Segue solução de acordo com o modulo sugerido MainCodCount:
Modulo Principal
Arquivo MainCodCount.c
int main(int argc, char *argv[])
{
/*O int argc: é um contador de quantos parametros foram
passados para a funcao principal(main).*/
/*O char argv é uma string(conjunto de caracteres)na forma de vetor
para guardar os valores que seram passados.*/
int comentario=0, vazia=0, i=0;
if(argc==2){
comentario=0;
vazia=0;
}else{
for(i=0;i<argc;i++){
if(strcmp("-c",argv[i])==0){
//a Funcao strcmp compara strigs
comentario=1;
//O array vai percorer todos os argumentos passados
/*fazendo comparacoes, o programa esta comparando se existe um
argumento chamado "-c" e caso exista ele o comantario recebe 1.*/
}
if(strcmp("-v",argv[i])==0){
vazia=1;
}
}
}
ccRun(argv[argc-1],comentario,vazia);
printf("\n");
return(0);
}
Modulo Auxiliar
//Criando a função conter, como ela não retorna nada ela será do tipo void.
void counter(char nomeArquivo[],int comentario,int vazia){
FILE *pArquivo;
int c=0,nCod=0,nCom=0,bCom=0,lCom=0,nVaz=0,cVaz=0,lVaz=0,cont=0,i=0;
char texto[sizeof(pArquivo)*1024];
pArquivo=fopen(nomeArquivo,"r");
if(pArquivo!=NULL){
do{
c=fgetc(pArquivo);
//Verificacao do numero de linhas
if(c=='\n'){
nCod++;
}
//fim da verificacao
texto[cont]=c;
cont++;
}while(c!=EOF);
fclose(pArquivo);
}else if(strcmp("-h",nomeArquivo)!=0){
printf("\n\nImpossivel abrir o arquivo!\n\n");
exit(1);
}
Código fonte com os dois módulos.
#include<stdio.h>
//biblioteca para entrada e saida de dados
#include<stdlib.h>
/*
stdlib.h Contém protótipos de funções variadas para:
conversão de números em texto e texto em números,
alocação de memória, números aleatórios;
e outras funções com várias finalidades.
*/
#include<string.h>
//Prototipo da funcao
void ccRun(char nomeArquivo[],int comentario,int vazia);
int main(int argc, char *argv[]){
/*O int argc: é um contador de quantos parametros foram
passados para a funcao principal(main).*/
/*O char argv é uma string(conjunto de caracteres)na forma de vetor
para guardar os valores que seram passados.*/
int comentario=0, vazia=0, i=0;
if(argc==2){
comentario=0;
vazia=0;
}else{
for(i=0;i<argc;i++){
if(strcmp("-c",argv[i])==0){
...