C语言/c++如何把数输入到txt文件中去

把1到100之间7的倍数找出来,并存入一个文本文件中。
#include<stdio.h>

void main()
{
int i;
for(i=1;i<=100;i++)
if(i%7==0)
printf("%d ",i);
}
现在的要求是不需要打印到屏幕上 而是要写进一个txt文件,请问怎么做?

C语言将数输入到文件中:

首先,定义一个文件指针:FILE  *fp;和一个数组:int  a[5];

然后,打开文件:fp = fopen ("filename.txt", "w"); //"w"是打开文件方式,将原有内容清空写入新数据,如果文件不存在则新建,类似的还有"r"只读打开(不能写入);"a"向文件中追加内容,原有内容不变,等等

最好再加入一个判断是否成功打开文件的if语句:

if (fp == NULL)

{

     printf ("文件打开失败!\n");

     exit (-1); //标记出错位置,需要包含头文件stdlib.h

}

把数据存入到数组里:

for (i=0; i<5; i++)

    scanf ("%d", &a[i]);

再把数组里的数一个一个的保存到txt文件中:

for (i=0; i<5; i++)

    fprintf (fp, "%d", a[i]); //fprintf 函数和printf 函数类似,只是输出的对象不同.fprintf 函数的输出对象是文件,而printf 函数的输出对象是屏幕

最后记得关闭文件: fclose (fp);

这样就把一组数保存到:filename.txt文件中了,下面是完整代码实现:

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

int main()
{
int i, a[5]; 
FILE *fp;

fp = fopen ("filename.txt", "w");
if (fp == NULL)
{
printf ("文件打开失败!\n");
exit (-1); //标记出错位置,需要包含头文件stdlib.h
}
printf ("输入要保存到文件里的5个数:\n");
for (i=0; i<5; i++)
scanf ("%d", &a[i]);
for (i=0; i<5; i++)
fprintf (fp, "%d ", a[i]);
printf ("这5个数已成功保存到filename.txt文件中\n");

return 0;
}

C++语言将数输入到文件中:

C++有关文件的操作要包含头文件fstream,因为头文件fstream中定义了一个用于处理输出的ofstream的类

声明ofstream变量(对象):ofstream  file;

声明一个变量(也可以是数组) int  a;

需要将ofstream对象与文件关联起来,使用open()方法:file.open("filename.txt");

将对象与特定的文件关联以后把数输入到文本中简单得就像把数打印到屏幕一样

如果要把变量a的值输入到文件中就象这样: file << a;

这样就把数保存到文件中了!

同C语言一样使用完以后利用close()将其关闭:file.close();

完整实现:

#include <iostream>
#include <fstream>
using namespace std;

int main()
{
int a; 
ofstream  file;

file.open ("filename.txt"); //将对象与文件关联
cout << "输入一个数:";
cin >> a;
file << a;
cout << "成功将数保存到filename.txt文件中去了!" << endl;
file.close ();

return 0;
}
综上,C语言和C++语言将数保存到文件还是有点区别的,只要撑握好它们的使用方法都很容易的!

:

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-10-28

1、C语言标准库提供了一系列文件操作函数。文件操作函数一般以f+单词的形式来命名(f是file的简写),其声明位于stdio.h头文件当中。例如:fopen、fclose函数用于文件打开与关闭;fscanf、fgets函数用于文件读取;fprintf、fputs函数用于文件写入;ftell、fseek函数用于文件操作位置的获取与设置。
2、例程:

#include<stdio.h>
int a;
char b,c[100];
int main(){
    FILE * fp1 = fopen("input.txt", "r");//打开输入文件
    FILE * fp2 = fopen("output.txt", "w");//打开输出文件
    if (fp1==NULL || fp2==NULL) {//若打开文件失败则退出
        puts("不能打开文件!");
        rturn 0;
    }
    fscanf(fp1,"%d",&a);//从输入文件读取一个整数
    b=fgetc(fp1);//从输入文件读取一个字符
    fgets(c,100,fp1);//从输入文件读取一行字符串
    
    printf("%ld",ftell(fp1));//输出fp1指针当前位置相对于文件首的偏移字节数
    
    fputs(c,fp2);//向输出文件写入一行字符串
    fputc(b,fp2);//向输出文件写入一个字符
    fprintf(fp2,"%d",a);//向输出文件写入一个整数
    
    fclose(fp1);//关闭输入文件
    fclose(fp2);//关闭输出文件,相当于保存
    return 0;
}

第2个回答  推荐于2017-09-19
#include<stdio.h>

void main()
{
int i;
FILE *fp = NULL;
fp=fopen("test.txt", "w"); //test.txt为文件这里可以带路径
if (fp == NULL) {
printf("打开失败\n");
return;
}

for(i=1;i<=100;i++) {
if(i%7==0) {
fprintf(fp, "%d", i);
}
}

}

简单粘了一个例子, 想要进一步了解可以查找里面调用的相关函数。
#include<stdio.h>

main()

{

char *s="That's good news");
/*
定义字符串指针并初始化
*/

int i=617;
/*
定义整型变量并初始化
*/

FILE *fp;
/*
定义文件指针
*/

fp=fopen("test.dat", "w");
/*
建立一个文字文件只写
*/

fputs("Your score of TOEFLis", fp);/*
向所建文件写入一串字符
*/

fputc(':', fp);
/*
向所建文件写冒号
:*/

fprintf(fp, "%d\n", i);
/*
向所建文件写一整型数
*/

fprintf(fp, "%s", s);
/*
向所建文件写一字符串
*/

fclose(fp);
/*
关闭文件
*/

}本回答被提问者和网友采纳
第3个回答  2015-11-16
我是在CMD中输出的 找到你生成的EXE文件 在cmd命令行中找到文件后 输入
程序名.exe>文档名.txt 如果没有有这个文档 系统会自动创建
第4个回答  2014-06-06
ofstream ofs("D:\\" + 名称 + ".txt");
if (!ofs.bad())
{
ofs << "编程 猴子吃桃问题猴子第一天摘下若干个桃子当机吃了一半还不过瘾又吃了一个以后每天早上吃前天剩下的一半零一个第十天早上想吃发现就剩一个求第一天共摘了几个" << endl;
ofs.close();
}
http://msdn.microsoft.com/zh-cn/library/7z434859.aspx

C语言\/c++如何把数输入到txt文件中去
需要将ofstream对象与文件关联起来,使用open()方法:file.open("filename.txt");将对象与特定的文件关联以后把数输入到文本中简单得就像把数打印到屏幕一样 如果要把变量a的值输入到文件中就象这样: file << a;这样就把数保存到文件中了!同C语言一样使用完以后利用close()将其关闭:file.close();...

C++中如何保存输入的数据
使用文件操作把输入的数据保存到文本当中即可。1、C语言标准库提供了一系列文件操作函数。文件操作函数一般以f+单词的形式来命名(f是file的简写),其声明位于stdio.h头文件当中。例如:fopen、fclose函数用于文件打开与关闭;fscanf、fgets函数用于文件读取;fprintf、fputs函数用于文件写入;ftell、fseek函数用...

C++输出到TXT文件
1、如果是那样,如果你仅仅是想让输出到一个txt文件的话。最简单的做法:在调用时加个输出转向就可以了。比如你的程序的名称为 TEST1.EXE,你想把输出放到一个名为MEMO1.TXT的文件中去,在DOS窗中调用你的程序时键入:TEST1.EXE > MEMO1.TXT 就可以了。在这里“>”起输出重定向作用。具体的使...

c语言怎么将数据写入文件?
首先打开VC++6.0。选择文件,新建。选择C++ source file 新建一个空白文档。先声明头文件#include <stdio.h>。写上主函数 void main 主要代码 FILE *infile,*outfile,*otherfile;char input;char inputs[10];int i=0;infile = fopen("d:\\\\infile.txt","r+");\/\/用fopen函数打开文件 outfile...

C\/C++输出太多,控制台显示不全,如何输出到文件里
在命令行运行这个:你的程序名 > out.txt 这样你的程序输出就到out.txt里了

C语言怎么将输入函数体的文字写到文本文件里面
\/\/程序功能,将输入的字符串写入文件中 include <stdio.h> include <stdlib.h> int main(){ FILE *fp=NULL;char str[100];\/\/字符串数组,假定最大输入99个字符 fp=fopen("test.txt","w");\/\/当前路径打开test文件,不存在则创建 if(!fp){ printf("文件打开失败,程序退出!\\n");exit(1...

C\/C++如何读取TXT文件的行数和把TXT文件的内容存到数组中
C语言读取TXT文件的行数并把把TXT文件的内容存到数组中,需要根据每行的内容(字符,数字,字符串)选取fgets、fscanf或者fgets。这里假设每行是一个字符串,每行不超过127个字符(用数组存字符串,最后一位存'\\0'),选取fgets进行读取。示例代码如下:include <stdio.h>#include <stdlib.h>int main...

关于怎么将数据保存到txt文件中的问题
执行完程序,你到C盘根目录下找一个叫c_out.txt的文件。include <stdio.h> include <conio.h> void main(){ FILE *fp;char str[10000],sum=0;int ch[26],i;for(i=0;i<26;i++)ch[i] = 0;printf("请输入单词,以#表示结束");scanf("%s",str);while(str[sum]!='#'){ for(...

c语言如何让程序把数据记在记事本里永久保存??
char szFileName[128];FILE *fp;memset(szFileName, 0, sizeof(szFileName));sprintf(szFileName, "filename");\/\/写入你要打开的文件名 if(NULL == (fp = fopen(szFileName, "w"))){ printf("文件打开失败");exit(0);} fprintf(fp,"xxxxxxxxxxxx");\/\/写入的内容 fclose(fp);就不...

C语言\/C++ 一个按行读取 C盘某txt文档 (文档是按行更新的,只输出最新...
1、将每一行的字符个数及各个字符的ASCII值累加为一个整数作为.txt文档每一行的特征数据记录下来(存入一个数据文件)。2、读入更新后的.txt文档,同样获取每一行的特征数据,然后与上次数据对应比较,如果有一个数据不同,就说明该行已经更新,根据要求处理该行。include <stdio.h>#include <stdlib.h>i...

相似回答