fork(1) download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <locale.h>
  4.  
  5. int main() {
  6.  
  7. int vet[10];
  8. int i,aux, s=1, c=0, l;
  9.  
  10. for(i=0; i<10; i++){ //entrada de dados
  11. printf("Digite o valor da posicao %d do vetor: ",i+1);
  12. scanf("%d",&vet[i]);
  13. }
  14. for(i=0; i<10; i++){
  15. if(vet[i] == 0){
  16. c++;
  17. }
  18. }
  19. for(i=0; i<10; i++){
  20. if(vet[i] == 0){
  21. s = 1;
  22. while(i + s < 10 && vet[i+s] == 0){
  23. s++;
  24. }
  25. if (i + s >= 10){
  26. break;
  27. }
  28. aux=vet[i];
  29. vet[i]=vet[i+s];
  30. vet[i+s]=aux;
  31. }
  32. }
  33. l = 10 - c;
  34. printf("\n");
  35. for(i=0; i<l; i++){
  36. if(vet[i] != 0){
  37. printf("VetorFinal [%d] = %d\n",i+1,vet[i]);
  38. }
  39. }
  40.  
  41. return 0;
  42. }
  43.  
Success #stdin #stdout 0s 9424KB
stdin
1
0
2
0
3
0
0
4
5
6
stdout
Digite o valor da posicao 1 do vetor: Digite o valor da posicao 2 do vetor: Digite o valor da posicao 3 do vetor: Digite o valor da posicao 4 do vetor: Digite o valor da posicao 5 do vetor: Digite o valor da posicao 6 do vetor: Digite o valor da posicao 7 do vetor: Digite o valor da posicao 8 do vetor: Digite o valor da posicao 9 do vetor: Digite o valor da posicao 10 do vetor: 
VetorFinal [1] = 1
VetorFinal [2] = 2
VetorFinal [3] = 3
VetorFinal [4] = 4
VetorFinal [5] = 5
VetorFinal [6] = 6