您的位置:

c语言随机读取,获取随机数c语言

本文目录一览:

c语言怎样从一装满英语单词的文件中随机读取一个单词?

方法就是把文件单词读取但数组,然后用rand随机函数去获取数组中随机一个元素。

你首先要确定文件里内容格式:

如果是文章,有单词又有各种符号,那么首先语言对内容字符串进行解析,把单词全部拆解到数组中。

如果是固定格式的单词(比如空格分割),直接用fopen和fscanf把单词读取但数组。

C语言中,随机读写是什么?

随机读写是按你给的地点读写,(用 fseek 等函数找地点),可以在文件的任何地方--开始处,文件尾,文件中部,前前后后地读写。

顺序读写 是从文件开始处依次读,从文件尾开始依次写。

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:\test.txt,然后随机名是c:\t138.txt。这就对了,重命名可以不改变文件所在目录啊,比如这样调:rename("c:\\test.txt","c:\\t138.txt");

文件名就由test.txt变成了t138.txt,而所在目录并没有发生变化。 继续追问: 来自手机问问 那怎么才能展现随机读取呢?新手,包含。 补充回答: 来自手机问问 #include stdio.h

#include stdlib.h

#include time.h

int main(void)

{

char path[]="C:\\ff.txt";

char rname[2];

FILE *fp;

/*产生10~20的随机数*/

srand((unsigned)time(NULL));

/*将整数转换成字符串*/

itoa(rand()%20+10,rname,10);

path[2]=rname[0];

path[3]=rname[1];

/*重命名文件*/

rename("C:\\ff.txt",path);

fp=fopen(path,"r");

if(fp==NULL)

{

printf("Open the file failed.\n");

}

else

{

printf("Open the file succed.\n");

}

return 0;

}

这段代码演示了c盘原来有一个ff.txt文件,后来被随机重命名为**.txt,程序去读取。

运行程序前要保证c盘存在ff.txt文件。 继续追问: 来自手机问问 还是那样,编译报错,哎,谢了 补充回答: 来自手机问问 我vc6编译通过啊,你什么编译器? 继续追问: 来自手机问问 一样。可能有地方写错了。 补充回答: VC6.0编译通过啊,可以稍微改一下: 补充回答: #include stdio.h

#include stdlib.h

#include time.h

int main(void)

{ char path[]="C:\\ff.txt";

char rname[2];

FILE *fp; /*产生10~20的随机数*/

srand((unsigned)time(NULL));

/*将整数转换成字符串*/

itoa(rand()%20+10,rname,10);

path[3]=rname[0];

path[4]=rname[1];

/*重命名文件*/

rename("C:\\ff.txt",path);

fp=fopen(path,"r");

if(fp==NULL)

{

printf("Open the file failed.\n");

}

else

{

printf("Open the file succed.\n");

}

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语言如何随机读取5个TXT文件数据

给你一个思路

先把文本中所有数据总数计算出来, 比如N

然后,随机五个不重复的0~N-1之间的数

从文本中读取数据, 符合之前随机五个数序号的, 就留下。

如果数据规模不大, 第一次就可以全读出来存成数组,然后直接访问数组就好。