Salvar um vetor em txt

Irei postando ao longo do tempo, alguns exercícios da faculdade que fiz recentemente.

Grave o conteúdo do vetor gerado no item 1, num arquivo tipo texto, sendo um número por linha. O nome do arquivo será solicitado pela função.

/*=============================================================================*
* includes                                                                     *
*=============================================================================*/

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

/*=============================================================================*
* declaracoes                                                                  *
*==============================================================================*
/*-----------------------------------------------------------------------------*
* declaracoes - prototipos de funcoes                                          *
*-----------------------------------------------------------------------------*/

void preencheVetor(int iNum, int *iVetor);

/*-----------------------------------------------------------------------------*
* funcao "main"                                                                *
*-----------------------------------------------------------------------------*/

int main(int argc, char *argv[]) {
    int iNum;
    printf("Digite um numero: \n");
    scanf("%d", &iNum);
    int *iVet = (int *)malloc(sizeof(int) * iNum);
    preencheVetor(iNum, iVet);
    printf("\n");
    for (int i = 0; i < iNum; i++)
        printf("\n %d ", iVet[i]);
    system("pause");
    
    return 0;
}

/*-----------------------------------------------------------------------------*
* corpo das funções - preencheVetor                                            *
*-----------------------------------------------------------------------------*/

void preencheVetor(int iNum, int *iVetor) {
     FILE *pArq;
     char *cPath = (char *) malloc(50 * sizeof(char));
     printf("Digite o caminho do arquivo: ");
     scanf("%s", cPath);
     pArq = fopen(cPath,"w+");
     if (pArq) {
        int iAux, iFlag = 0;
        srand(time(NULL));
        for (int i = 0; i < iNum; i++) {
            iAux = (int) rand() % 100;
            for (int j = 0; j < i; j++) {
                if (iAux == iVetor[j])
                   iFlag = 1;
            }
            if (iFlag != 1){
               iVetor[i] = iAux;
               fprintf(pArq,"%d\n", iVetor[i]);
            }
            else
                i--;
            iFlag = 0;
        }
     }
     fclose(pArq);
}
Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s