|
|
- #include "stdio.h"
- #include "stdlib.h"
- #include "time.h"
- #include "math.h"
- #include "string.h"
-
- /**
- * @brief generate a file consists of 50000 lines of words,
- * half line has a substring "computer", and is repeated.
- * the clone one is stripped of "computer".
- *
- * 0 ~ 9 : 48 ~ 57
- * a ~ z : 97 ~ 122
- *
- */
-
-
- void file_create(const char *_addr)
- {
- FILE *file = fopen(_addr, "w");
- size_t line = 250000u;
- srand(time(NULL));
-
- // char *str = NULL;
- for (size_t i = 0; i < line; i++) {
- // str = (char *)malloc(abs(rand())%20 * sizeof(char));
- char str[abs(rand())%100+1];
- for (size_t j = 0; j < strlen(str); j++) {
- if (abs(rand()) % 2 == 0)
- str[j] = abs(rand())%10 + 48;
- else
- str[j] = abs(rand())%26 + 97;
- }
- strcat(str, "computer\n");
- fputs(str, file);
- fputs(str, file);
- // free(str);
- }
-
- fclose(file);
- }
-
- void file_show()
- {
- FILE *file = fopen("words.txt", "r");
- int ch;
-
- while ((ch = fgetc(file)) != '\n') {
- printf("%c", ch);
- }
-
- fclose(file);
- }
-
- int main()
- {
- file_create("words.txt");
- return 0;
- }
|