今天给各位分享c语言随机读取的知识,其中也会对c语言随机取值进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
1、c语言 文件按记录随机读写2、c语言怎么随机的读取磁盘文本文件3、如何利用c语言实现对txt文档的随机读取4、C语言-怎样进行随机取值5、C语言中,随机读写是什么?6、C语言如何随机读取5个TXT文件数据
c语言 文件按记录随机读写
文件随机读写完整c程序:
#includestdio.h
#includestdlib.h
#define NUM 20
main( )
{
FILE *fp1; /*定义文件指针*/
char *temp;
int i,j;
struct rec{ /*定义结构体类型*/
char id[10];
char name[15];
char department[15];
}record[NUM];
printf(“***********************************************************\n”);
printf(“** This program is to show the random file input output**\n”);
printf(“***********************************************************\n”);
if ((fp1=fopen(“d:\\infile.txt”,”wb”))==NULL) /*以二进制只写方式打开文件*/
{
printf(“cannot open file”);/*出错返回*/
exit(1);
}
for( i=0;iNUM;i++)
{
printf(“Please input id:”);
scanf(“%s”,record[i].id); /*从键盘输入*/
printf(“Please input name:”);
scanf(“%s”,record[i].name);
printf(“Please input department:”);
scanf(“%s”,record[i].department);
fwrite(record[i],sizeof(struct rec),1,fp1); /* 成块写入*/
}
fclose(fp1); /*关闭*/
if((fp1=fopen(“d:\\infile.txt”,”rb+”))==NULL)/*以可读写方式打开文件*/
{
printf(“cannot open file”); /*出错返回*/
exit(1);
}
printf(“************************************\n”);
printf(“%-10s%-15s%-15s\n”,”id”,”name”,”department”);
printf(“************************************\n”);
for (i=0;iNUM;i++)
{ /*显示全部文件内容*/
fread(record[i],sizeof(struct rec),1,fp1);
printf(“%-10s%-15s%-15s\n”,record[i].id,record[i].name,record[i].department);
}
/*以下进行文件的随机读写*/
fseek(fp1,2*sizeof(struct rec),0); /* 定位文件指针指向第三条记录*/
fwrite(record[1],sizeof(struct rec),1,fp1);
/* 在第三条记录处写入第二条记录*/
rewind(fp1); /*移动文件指针到文件头*/
printf(“************************************\n”);
printf(“%-10s%-15s%-15s\n”,”id”,”name”,”department”);
printf(“************************************\n”);
for (i=0;iNUM;i++)
{ /*重新输出文件内容*/
fread(record[i],sizeof(struct rec),1,fp1);
printf(“%-10s%-15s%-15s\n”,record[i].id,record[i].name,record[i].department);
}
fclose(fp1); /*关闭文件*/
scanf(“%d”,i);
}
c语言怎么随机的读取磁盘文本文件
你的用变量path作为文件绝对路径,你每次要将它的值改变,而你的文件位置是保持不变的,这样当然读不到文件。
你要保持同步,就是说path的值发生改变是就要同时把文件给重命名了,给文件重命名用rename()函数,函数原型:
int rename(char *lpOldName,char *lpNewName);
第一个参数是文件原名,第二个是重命名后的文件名,若重命名成功返回1,否则返回0。头文件stdio.h或io.h。
还有要说你上面的代码有错,
char path[20]=”c:\\”; //你忘记了转义字符
而且你应该从path[3]开始赋值,因为”c:\\”除去一个空字符就只有3个字符,下标是从0开始的(\\是一个字符)
如何利用c语言实现对txt文档的随机读取
#includeiostream
#includefstream
using namespace std;
//首先,你肯定得知道你的记事本里面的数据是几行几列的,我现在假设是15列的,那么,假设你输入了(2,9),即第二行,第三列(0算第一行(列))
int main()
{
int n,m;
cout”请输入行号和列号,空格隔开:\n”;
cinnm;
ifstream in(“e://数据.txt”);//这个文件路径你自己填,然后把相应的文件放在那,名字就是数据,当然你也可以改成别的名字,不过相应这儿也得改成那个名字
int position=n*15+m;
double data;
while(!in.eof()position0)
{
indata;
position–;
}
coutdataendl;
system(“pause”);
return 0;
}
希望对你有用。
C语言-怎样进行随机取值
有srand 和 rand函数,来进行。给你举个例子,随机取1-100 的一个数
#include stdlib.h
#include stdio.h
int
main(void)
{
int val;
srand((unsigned int)time((time_t *)0));
val = rand()%100;
printf(“val = %d\n”, val);
return 0;
}
C语言中,随机读写是什么?
随机读写是按你给的地点读写,(用 fseek 等函数找地点),可以在文件的任何地方–开始处,文件尾,文件中部,前前后后地读写。
顺序读写 是从文件开始处依次读,从文件尾开始依次写。
C语言如何随机读取5个TXT文件数据
给你一个思路
先把文本中所有数据总数计算出来, 比如N
然后,随机五个不重复的0~N-1之间的数
从文本中读取数据, 符合之前随机五个数序号的, 就留下。
如果数据规模不大, 第一次就可以全读出来存成数组,然后直接访问数组就好。
c语言随机读取的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于c语言随机取值、c语言随机读取的信息别忘了在本站进行查找喔。