c语言怎样从文件中随机输出内容

如题所述

你可以先把文件中的数据读出来放到数组里面,再用产生随机数,根据随机数来取相应位置的内容。随机数的产生方法可以参考以下代码(注,以下代码是产生0到99的随机数)
#include <stdlib.h>
#include <stdio.h>
#include <time.h>

int main(void)
{
int i;
time_t t;

srand((unsigned) time(&t));
printf("Ten random numbers from 0 to 99\n\n");
for(i=0; i<10; i++)
printf("%d\n", rand() % 100);
return 0;
}追问

谢谢 不过我是从一个文件中随机输出

追答

什么意思?是把文件中的内容输出来,还是把文字读到文件啊?

追问

随机把文件中的内容输出来

追答

就像我那样应该能输出吧,感觉

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-11-07
打开文件,确定长度(跳到文件尾,文件尾指针-文件头指针)
产生长度内随机数
文件头指针+随机数,开始输出内容
第2个回答  2012-11-08
文件指针有个定位函数 fseek 自己看看

c语言怎样从文件中随机输出内容
int main(void){ int i;time_t t;srand((unsigned) time(&t));printf("Ten random numbers from 0 to 99\\n\\n");for(i=0; i<10; i++)printf("%d\\n", rand() % 100);return 0;}

用C语言来随机输出一个中文你打英文!
int i = 0;FILE *fp;\/\/文件指针,指向打开的文件 fp = fopen("conect.txt", "r");\/\/打开 conect.txt 文件(里面保存了单词及翻译)if(fp == NULL)\/\/如果打开不成功,则退出 return -1;while(i < 5)\/\/读入5个单词及其翻译 { fscanf(fp, "%s", word[i][0]);\/\/word[i][0]里面...

在C语言编程中,如何实现让电脑随机输出一1~9的整数?
rand()函数会返回一个伪随机数,但是这是通过一种数学公式推算出来的,得到的随机数分布太集中,这时候要使用srand()函数来设定产生随机数的种子,一般采用当前时间作为种子,这样可以得到分布比较均匀的伪随机数。rand(),srand()函数位于stdlib.h文件中,取得时间的time()函数位于time.h文件中。rand()%...

如何用C语言输出0到5之间的随机数?
1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。2、在test.cpp文件中,输入C语言代码:printf("%02d", 5);。3、编译器运行test.cpp文件,此时输出5成功输出成了05。

C语言如何随机输出一个字符串?
随机输出一个字符串,其实就是要随机生成一个字符串并输出。要实现这一点,可以通过rand函数来实现。具体示例代码如下:include <stdio.h>#include <stdlib.h>#include #define STR_LEN 10\/\/定义随机输出的字符串长度。#define CHAR_MIN 'a'#define CHAR_MAX 'z' \/\/定义输出随机字符串每个字符的...

C语言,使用rand()函数,编写程序,随机输出同学们的姓名和学号,在线等...
if(ch=='\\n')n++;}\/\/统计人数fclose(fp);bb=time(0);srand(bb);m=rand()%n+1;n=0;fp=NULL;fp=fopen("student.txt","r");while(!feof(fp)&&n<m){n++;fscanf(fp,"%s %s",name,&num);}printf("随机抽取:%s %s\\n",name,num);fclose(fp);system("pause");}文件内容:...

c语言中如何随机输出加减乘除
给定加减乘除的符号,给一个字符串,然后随机分配一个数,输出这个数所对应的字符串中的字符。include<stdio.h> main(){ float a,b;char c;printf("请按照这样的格式输入zhuan:a(+,-,*,\/)b\\n");scanf("%f%c%f",&a,&c,&b);switch(c){ case'+': printf("%f",a+b);break;case'-...

C语言中如何随机输出一个字母
include <stdio.h> include<stdlib.h> include void main(){ int i;char c;srand((unsigned)time(NULL));i=rand()&1;\/\/i用来控制产生的字母是大写还是小写 if(i==0)c='A'+rand()%26;else c='a'+rand()%26;printf("%c\\n",c);} ...

C语言中如何随机输出一个字母?
用下面代码就可以了:int upcase = rand()%2;(char)(upcase?'a':'a'+ rand()%26);不过生成随即数要用srand函数时间作为种子数,要不生成随即数不好。

求一个随机输出的C语言程序
include <stdlib.h> include main(){ srand((unsigned)(time(0)));int tmp =(int)(3*(double)(rand()\/RAND_MAX));switch (tmp){ case 0:printf("a\\n");break;case 1:printf("b\\n");break;case 0:printf("c\\n");break;} } 随便写了一段 没有放进编译器里运行 所以可能有...

相似回答