1 – 14 de 14
Anônimo Anônimo disse...

kkkkkkkkkkkkkkkkkkk voces do C Prograssivo deviam ter falado antes isso, d q o vetor/matriz tem seu valor alterado na função..........

Fiquei q nem um doido no tutorial passado tentado resolver aquele ultimo exemplo rsrsrs........

Agora eu entendi kkkkkk
Obrigado C Progressivo :D

1 de agosto de 2013 às 08:27

Anônimo Anônimo disse...

Belo Poste, ajudou-me bastante

2 de abril de 2014 às 16:34

Anônimo Amanda disse...

Seu site é ótimo. Muito obrigada por explicar de um jeito tão didático e com tantos exemplos, Me ajudou muito. Obrigada!

19 de junho de 2014 às 13:28

Blogger Unknown disse...

Eu quero copiar um vetor de valores aleatórios, para isso eu usei a função recebe.
Porem na hora de mostrar o vetor aparece outros números. Não entendi o porque..
O código:


#include
#include
#include
#define TAM 50

int recebe(){
int vet[TAM];
int i=0,cont=1;

printf("Gerando vetor aleatorio = \n\n");
srand(time(NULL));

for(i=0; i<TAM ; i++){
vet[i] = rand()%TAM;
}

for(i=0;i<TAM;i++){
printf("N[%d] = %d\n",cont,vet[i]);
cont++;
}
return vet[i];
}

int copiar(int copiado[], int recebe[]){
int cont;

for(cont=0 ; cont < TAM ; cont++){
copiado[cont] = recebe[cont];
}
return copiado[cont];
}

void exibir(int vet[]){
int count;

for(count=0 ; count < TAM ; count++){
printf("%d\t", vet[count]);
printf("\n");
}
}

int main(void){
int original[TAM], copia[TAM];

recebe();
copiar(copia, original);

printf("\t\tVetor original:\n ");
exibir(original);
printf("\n");
printf("\t\tVetor copiado :\n ");
exibir(copia);

return 0;
}

16 de agosto de 2014 às 18:51

Anônimo Anônimo disse...

Não entendi bem o que o exemplo acima tentou nos mostrar realmente?
Onde no texto diz: Passagem por referência(endereço de memória), não vi nada de ponteiros, e sim por cópia.
??

7 de outubro de 2014 às 11:45

Anônimo Anônimo disse...

Andreia

Na função recebe() você está populando o array "vet" criado na própria função "recebe" e na hora de exibir você está passando o "original" e este não foi populado, dessa forma você está exibindo lixo da memória e não o array.

Deveria ser desta forma:

//function que recebe os valores
int recebe(int original[]) {

int i = 0,
cont = 1;

printf("Gerando vetor aleatorio = \n\n");
srand(time(NULL));

for (i = 0; i < TAM; i++) {
original[i] = rand() % TAM;
}

for (i = 0; i < TAM; i++) {
printf("N[%d] = %d\n", cont, original[i]);
cont++;
}

return original;
}


//chamada a function recebe passando o array original
recebe(original);

23 de outubro de 2014 às 11:35

Blogger Samir disse...

Por que que na função DOBRAR, quando matriz, deve-se declarar o número de colunas?
void dobrar(int dobrado[][DIM], int original[][DIM])

24 de outubro de 2014 às 18:36

Blogger ze disse...

muito bom.

mas é som com o vetor que passa a referencia sem colocar "&" antes não é?

30 de dezembro de 2014 às 16:44

Blogger ze disse...

8- Ao se utilizar um vetor como parâmetro para uma função que informação está sendo passada à função?


a. Uma cópia de todos elementos do vetor
b. Uma cópia do primeiro elemento do vetor
c. O endereço do primeiro elemento do vetor
d. O endereço de todos os elementos do vetor
e. Nenhuma das opções anteriores



a resposta correta foi a letra c. como assim? so se cada elemento do vetor funcionar como ponteiro... o 1 apontada para o 2 e assim vai ... ta correto?

30 de dezembro de 2014 às 16:49

Blogger Unknown disse...

onde esta a passagem por referencia ai??

15 de junho de 2015 às 19:48

Blogger Alan disse...

não entendi qual a utilidade do vetor copiado, sendo que da para dobrar sem usar o vetor copia .

9 de março de 2016 às 15:45

Anônimo Anônimo disse...

Ola boa noite!
Estou tendo problemas para fazer um programa que copia uma matriz 3x3 para um vetor de 9 posições, na hora de imprimir, esta sendo mostrado numeros aleatorios, mas nao os mesmos que preenchi a matriz. Alguem pode me ajudar?
Esta aqui o codigo:

#include


void preencher(int m[][3]){

int i,j;

for(i=0;i<3;i++){
for(j=0;j<3;j++){

printf("Linha %d, Coluna %d:", i+1, j+1);
scanf("%d", &m[i][j]);
}
}
}
void mostrar(int m[][3]){

int i,j;

for(i=0;i<3;i++){
for(j=0;j<3;j++){

printf("%d", m[i][j]);

}printf("\n");
}
}

void copiar(int v[], int m[][3]){

int a=0, i,j;

for(i=0;i<3;i++){
for(j=0;j<3;j++){

v[a]=m[i][j];

printf("%d ", v[a]);
a++;

}
}
}




main(){

int m[3][3], v[9];
preencher(m);
mostrar(m);
copiar(m,v);
}

14 de maio de 2016 às 16:33

Blogger Lucas de Lima disse...

Muito bom!!!

25 de outubro de 2017 às 17:48

Blogger Valmir Romariz disse...

acrescentado do tripo também mando pra quem precisar:

#include
#include
#define TRI 10

void recebe(int original[])
{
int count = 0;

for(count = 0; count < TRI ; count++)
{
printf("Entre com o elemento %d: ", count+1);
scanf("%d", &original[count]);
}
}
void copiar(int copiado[], int original[])
{
int count;

for(count=0 ; count < TRI ; count++)
copiado[count] = original[count];
}

void dobrar(int dobrado[], int original[])
{
int count;

for(count=0 ; count < TRI ; count++)
dobrado[count] = 2 * original[count];
}
void triplicado(int triplica[], int original[])
{
int count;

for(count=0 ; count < TRI; count++)
triplica[count] = (3 )* (original[count]);
}

void exibir(int vet[])
{
int count;

for(count=0 ; count < TRI ; count++)
printf("%3d ", vet[count]);
}
int main()
{
int original[TRI],
copia[TRI],
dobrado[TRI],
triplica[TRI];

recebe(original);
copiar(copia, original);
dobrar(dobrado, original);
triplicado(triplica, original);

printf("Vetor original: ");
exibir(original);

printf("\nVetor copiado : ");
exibir(copiar);

printf("\nVetor dobrado : ");
exibir(dobrado);

printf("\nVetor triplicado : ");
exibir(triplica);

return 0;
}

23 de dezembro de 2017 às 05:49

É quase impossível criar centenas de páginas voltadas para programação C e não cometer algum erro.

- Se notar algum conceito, letra ou trecho de código errado, deixe sua correção

- Se perceber uma maneira melhor ou mais eficiente de fazer algo, deixe sua ideia

- Se algo não ficar claro ou for confuso, nos avise

Aos poucos vamos aumentando e melhorando a qualidade de nosso material, e para isso contamos com sua ajuda.
Você pode usar algumas tags HTML, como <b>, <i>, <a>

A moderação de comentários foi ativada. Todos os comentários devem ser aprovados pelo autor do blog.

Depois de enviar seu comentário, será necessário fazer login.
Prove que você não é um robô