PRINTF! Retorna valores

1. PRINTF! Retorna valores

Ana Paula da Conceicao Silva
aninhalw

(usa Debian)

Enviado em 06/06/2016 - 10:18h

Olá, bom dia

Tenho esse codigo, porem preciso saber os valores que ele retorna, gostaria de saber onde eu coloco um printf para ver os valores:

#include <stdio.h>
#include <stdlib.h>
#define MAX 5
void funcB (int *va, int *vb);
void funcA (int *va, int *vb);

int main ()
{
int vetA[MAX], vetB[MAX];
funcA (vetA, vetB);
funcB (vetA, vetB);
}

void funcA (int *va, int *vb)
{
int k;
for (k=0; k<MAX; k++)
{
vb[k] = 0;
if (k % 2 == 0)
va[k] = k;
else
va[k] = 2*k;
}
}


void funcB (int *va, int *vb)
{
int k;
for (k=0; k <MAX; k++)
{
while (va[k] > k)
{
vb[k] = va[k];
va[k] = va[k] -1;
}
}
}

Ele retorna os valores: { 0,2,0,4,0}


  


2. Re: PRINTF! Retorna valores

Paulo
paulo1205

(usa Ubuntu)

Enviado em 06/06/2016 - 10:45h

Que tal colocar dentro de main(), após as duas funções que geram os valores nos arrays?


3. Re: PRINTF! Retorna valores

Ana Paula da Conceicao Silva
aninhalw

(usa Debian)

Enviado em 06/06/2016 - 10:55h

Como eu faço ?
Coloquei : printf("\n\nRetorno: %d", k);
mas da erro.


4. Re: PRINTF! Retorna valores

Paulo
paulo1205

(usa Ubuntu)

Enviado em 06/06/2016 - 11:33h

Antes de responder, deixe-me dar uma dica. Quando você imprimir alguma coisa que não será seguida de outra coisa na mesma linha, coloque logo a marca de fim de linha. Por exemplo, sem vez de fazer isto

int main(void){
printf("Linha 1");
printf("\nLinha 2");
return 0;
}


prefira isto:

int main(void){
printf("Linha 1\n");
printf("Linha 2\n");
return 0;
}


Acho interessante você saber que muitas aplicações de processamento de texto entendem que a falta da marca de fim de linha na segunda linha significa que a linha não acabou, e podem considerar isso um sinal de texto truncado. Desse modo, a saída do primeiro programa pode ser inválida ou produzir resultados inesperados. Por exemplo, se você submeter sua saída ao comando “wc -l”, que serve para contar linha, ele vai dar “1” como resposta. Já a do o segundo programa produziria o resultado “2”.


Agora, à sua pergunta. main() não tem como saber quem é k, porque não existe nenhum k global nem declarado no corpo da própria função.

O que você quer imprimir?


5. Re: PRINTF! Retorna valores

Ana Paula da Conceicao Silva
aninhalw

(usa Debian)

Enviado em 06/06/2016 - 12:11h

Sabemos que ele retorna :

os valores: { 0,2,0,4,0}

mas não sei como apresentar isso no printf.


6. Re: PRINTF! Retorna valores

Ana Paula da Conceicao Silva
aninhalw

(usa Debian)

Enviado em 06/06/2016 - 12:53h

Alternativas
a) Apos execução o programa, o vetor vetA armazenar os valores {0,2,0,4,0}
b) Apos execução o programa, o vetor vetB armazenar os valores {0,1,2,3,4}
c) Apos execução o programa, o vetor vetA armazenar os valores {0,2,2,6,4}
d) Apos execução o programa, o vetor vetB armazenar os valores {0,2,0,4,0} seria a resp certa
e) Não é possível determina os valores armazenados nos vetores.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts