C ++读取和编辑文件

时间:2015-06-16 18:50:48

标签: c++ file

我有一个C ++程序,只询问数学,物理和P.E,文件和数据文件中的保存也是这些值的平均值。到目前为止这么好,但我现在需要的是,可以询问用户是否要检查/可视化写在其上的内容,以及他是否说他们不想编辑它。我认为这是一项非常艰巨的任务,但对我而言也是如此。

#include <stdio.h>

int main(void)
{
    char url[]="notas.txt";
    float nota,
          media=0.0;
    FILE *arq;

    arq = fopen(url, "w");
    if(arq == NULL)
            printf("Error, it wasnt possible to open the file\n");
    else{
        printf("Maths eavluation: ");
        scanf("%f", &nota);
        fprintf(arq, "Matematica: %.2f\n", nota);
        media+=nota;

        printf("P.E evaluation: ");
        scanf("%f", &nota);
        fprintf(arq, " Educacao Fisica: %.2f\n", nota);
        media+=nota;

        printf("quemistry Eavluation: ");
        scanf("%f", &nota);
        fprintf(arq, " Fisico Quimica: %.2f\n", nota);
        media+=nota;

        media /= 3;
        fprintf(arq, "Media final: %.2f\n", media);
    }
    fclose(arq);

    printf("do u want to check the file??")
    //from here i dont know what to du ....XP

    return 0;
}

如果你愿意,我会翻译一下,请问好吗?

1 个答案:

答案 0 :(得分:0)

这是你想要的开始。因为这是一项任务,我给你留下了一些阅读,以及作业的其余部分。我还翻译了大部分代码用葡萄牙语阅读。

#include <iostream>
#include <fstream>

// seu códe
// Faça isso para ler o conteúdo do arquivo. Este não é testado
fclose(arq);
std::ifstream meu_arquivo;
meu_arquivo.open(url, std::ifstream::in);
std::cout << "Digite sim , se você quiser ver as notas: ";
std::string resposta;
std::cin >> resposta;
if (resposta == "sim" && meu_arquivo.good()) {
    // imprimir o conteúdo do arquivo.
    std::string line;
    while (std::getline(infile, line)) {
        std::cout << line << std::endl;
    }        
} else {
    meu_arquivo.close();
}

// Edição de um arquivo é deixado como um exercício . Por favor, leia 
// http://www.cplusplus.com/doc/tutorial/files/ para mais detalhes.