本文目錄一覽:
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之間的數
從文本中讀取數據, 符合之前隨機五個數序號的, 就留下。
如果數據規模不大, 第一次就可以全讀出來存成數組,然後直接訪問數組就好。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/304222.html