Responda
Escreva uma única instrução por meio da qual cada um dos itens a seguir possa ser obtido. Suponha que cada uma dessas sentenças se aplique ao mesmo programa.
a) Escreva uma instrução que abra o arquivo “oldmast.dat” para leitura e atribua o ponteiro de arquivo retornado a ofPtr.
b) Escreva uma instrução que abra o arquivo “trans.dat” para leitura e atribua o ponteiro de arquivo retornado a tfPtr.
c) Escreva uma instrução que abra o arquivo “newmast.dat” para gravação (e criação) e atribua o ponteiro de arquivo retornado a nfPtr.
d) Escreva uma instrução que leia um registro do arquivo “oldmast.dat”. O registro consiste no inteiro accountNum, na string name e no valor de ponto flutuante currentBalance.
e) Escreva uma instrução que leia um registro do arquivo “trans.dat”. O registro consiste no inteiro accountNum e no valor de ponto flutuante realAmount.
f) Escreva uma instrução que grave um registro no arquivo “newmast.dat”. O registro consiste no inteiro accountNum, na string name e no valor de ponto flutuante currentBalance.
Passo 1
E aí meus queridos!! Tudo bem com vocês??
Hoje vamos entender algumas funções que nos ajuda a manipular alguns arquivos em nosso programa. Bora lá??
- Para abrirmos um arquivo precisamos utilizar fopen e atribuir o endereço desse arquivo para o ponteiro ofPtr.
- Para resolver a seguinte vamos utilizar o mesmo método da anterior. Precisamos abrir o arquivo e atribuir ao ponteiro tfPtr.
- Seguindo a mesma lógica, também podemos resolver a c da mesma maneira:
- Já nessa questão precisamos entender sobre a função fscanf. Essa função lê a entrada formatada de um stream. Assim precisamos definir a instrução da seguinte maneira:
- Essa podemos resolver igual a questão anterior apenas mudando o ponto flutuante e o ponteiro no qual atribuímos antes. Veja:
- Precisamos gravar um registro no arquivo e para isso utilizamos a função fprintf. Essa função imprime uma cadeira de caracteres formatadas em um fluxo. Vaja como podemos fazer:
Então podemos resolver nosso problema assim:
ofPtr = fopen(“oldmast.dat”, “r”);
Passo 2
Resolvendo:
tfPtr = fopen(“trans.dat”, “r”);
Passo 3
nfPtr = fopen( “newmast.dat”, “w” );
Passo 4
fscanf( ofPtr, “%d%s%f”, &accountNum, name, ¤tBalance );
Passo 5
fscanf( tfPtr, “%d%f”, &accountNum, &dollarAmount );
Passo 6
E para finalizar...
fprintf( nfPtr, “%d %s %.2f”, accountNum, name, currentBalance );
Ufa... Acabamos por aqui!! Dê Ctrl+n no seu compilador e bora para o próximo exercício!!

Resposta
Ei, a resposta está no passo a passo :)