#include<stdio.h>
#include<stdlib.h>
/* Definicao de constantes */
#define N_ELEM 4
/* Procedimento para leitura de vetores */
void ler_vetor( int vet[ ] , int n_elem)
{
int i; /* Contador */
for ( i = 0 ; i < n_elem; i++ ) {
}
}
/* Procedimento para escrita de vetores na tela */
void escrever_vetor( int vet[ ] , int n_elem)
{
int i; /* Contador */
for ( i = 0 ; i < n_elem; i++ )
printf ( "vet[%d]: %d\n " , i
, vet
[ i
] ) ; }
/* Procedimento para dobrar os valores dos elementos de um vetor */
void dobrar_vetor( int vet[ ] , int n_elem)
{
int i; /* Contador */
for ( i = 0 ; i < n_elem; i++ )
vet[ i] = 2 * vet[ i] ;
}
/* Funcao principal */
int main( void )
{
/* Declaracao de variaveis */
int vet1[ N_ELEM] ;
printf ( "========================================================\n " ) ; printf ( "Este programa modifica um vetor inserido, utilizando \n " ) ; printf ( "procedimentos com passagem de vetores como parametros \n " ) ; printf ( "========================================================\n " ) ;
/* Coleta de dados */
printf ( "Digite os valores dos elementos do vetor (%d elementos)\n " , N_ELEM
) ; ler_vetor( vet1, N_ELEM) ;
/* Modificacao dos valores dos elementos do vetor */
dobrar_vetor( vet1, N_ELEM) ;
/* Impressao de dados */
printf ( "--------------------------\n " ) ; printf ( "Vetor modificado:\n " ) ; escrever_vetor( vet1, N_ELEM) ;
return 0 ;
}
I2luY2x1ZGU8c3RkaW8uaD4KI2luY2x1ZGU8c3RkbGliLmg+CgovKiBEZWZpbmljYW8gZGUgY29uc3RhbnRlcyAqLwojZGVmaW5lIE5fRUxFTSA0CgoKLyogUHJvY2VkaW1lbnRvIHBhcmEgbGVpdHVyYSBkZSB2ZXRvcmVzICovCnZvaWQgbGVyX3ZldG9yKGludCB2ZXRbXSwgaW50IG5fZWxlbSkKewoJaW50IGk7ICAgICAgICAvKiBDb250YWRvciAqLwoKCWZvciAoaSA9IDA7IGkgPCBuX2VsZW07IGkrKykgewoJCXByaW50ZigidmV0WyVkXTogIiwgaSk7CgkJc2NhbmYoIiVkIiwgJnZldFtpXSk7Cgl9Cn0KCgovKiBQcm9jZWRpbWVudG8gcGFyYSBlc2NyaXRhIGRlIHZldG9yZXMgbmEgdGVsYSAqLwp2b2lkIGVzY3JldmVyX3ZldG9yKGludCB2ZXRbXSwgaW50IG5fZWxlbSkKewoJaW50IGk7ICAgICAgICAvKiBDb250YWRvciAqLwoKCWZvciAoaSA9IDA7IGkgPCBuX2VsZW07IGkrKykKCQlwcmludGYoInZldFslZF06ICVkXG4iLCBpLCB2ZXRbaV0pOwp9CgovKiBQcm9jZWRpbWVudG8gcGFyYSBkb2JyYXIgb3MgdmFsb3JlcyBkb3MgZWxlbWVudG9zIGRlIHVtIHZldG9yICovCnZvaWQgZG9icmFyX3ZldG9yKGludCB2ZXRbXSwgaW50IG5fZWxlbSkKewoJaW50IGk7ICAgICAgICAvKiBDb250YWRvciAqLwoKCWZvciAoaSA9IDA7IGkgPCBuX2VsZW07IGkrKykKCQl2ZXRbaV0gPSAyICogdmV0W2ldOwp9CgoKLyogRnVuY2FvIHByaW5jaXBhbCAqLwppbnQgbWFpbih2b2lkKQp7CgkvKiBEZWNsYXJhY2FvIGRlIHZhcmlhdmVpcyAgKi8KCWludCB2ZXQxW05fRUxFTV07CgoJcHJpbnRmKCI9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIik7CglwcmludGYoIkVzdGUgcHJvZ3JhbWEgbW9kaWZpY2EgdW0gdmV0b3IgaW5zZXJpZG8sIHV0aWxpemFuZG8gICAgXG4iKTsKCXByaW50ZigicHJvY2VkaW1lbnRvcyBjb20gcGFzc2FnZW0gZGUgdmV0b3JlcyBjb21vIHBhcmFtZXRyb3MgICBcbiIpOwoJcHJpbnRmKCI9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIik7CglwcmludGYoIlxuIik7CgoJLyogQ29sZXRhIGRlIGRhZG9zICovCglwcmludGYoIkRpZ2l0ZSBvcyB2YWxvcmVzIGRvcyBlbGVtZW50b3MgZG8gdmV0b3IgKCVkIGVsZW1lbnRvcylcbiIsIE5fRUxFTSk7CglsZXJfdmV0b3IodmV0MSwgTl9FTEVNKTsKCgkvKiBNb2RpZmljYWNhbyBkb3MgdmFsb3JlcyBkb3MgZWxlbWVudG9zIGRvIHZldG9yICovCglkb2JyYXJfdmV0b3IodmV0MSwgTl9FTEVNKTsKCgkvKiBJbXByZXNzYW8gZGUgZGFkb3MgKi8KCXByaW50ZigiXG5cbiIpOwoJcHJpbnRmKCItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIik7CglwcmludGYoIlZldG9yIG1vZGlmaWNhZG86XG4iKTsKCWVzY3JldmVyX3ZldG9yKHZldDEsIE5fRUxFTSk7CgoJcmV0dXJuIDA7Cn0K