Advertisement
Guest User

Untitled

a guest
Oct 16th, 2019
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.87 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. int main(int argc, char**argv){
  6. int sizeCheck = NULL;
  7. int num = NULL;
  8. int n;
  9. int nCheck; //used to make sure both files are of same length
  10. int err;
  11. FILE *words = fopen("words.dat", "r");
  12. FILE *matrix = fopen("matrix.dat","r");
  13. FILE *graph = fopen("graph.dot","w+");
  14. fprintf(graph,"graph {\n\toverlap=scale\n");
  15. FILE *test = fopen("result.dat","w+");
  16.  
  17. err = fscanf(words, "%d\n",&n);
  18. if (err!=1){
  19. printf("Error reading file.\n");
  20. return EXIT_FAILURE;
  21. }
  22.  
  23. char vocab[n*50];
  24. char *vocabPointer[n];
  25.  
  26. for (int i = 0; i<n; i++){
  27. vocabPointer[i] = vocab + (i*n);
  28. }
  29.  
  30. for(int i = 0; i < n; i++){
  31. fscanf(words, "%s", vocabPointer[i]);
  32. }
  33.  
  34. for(int i = 0; i < n; i++){
  35. fprintf(test, "%s\n", vocabPointer[i]);
  36. }
  37. fclose(test);
  38.  
  39. err = fscanf(matrix,"%d\n",&sizeCheck);
  40. if (err!=1 || sizeCheck!=n){
  41. return EXIT_FAILURE;
  42. }
  43.  
  44. for(int i = 0; i < n; i++){
  45. int firstWord = 0;
  46. int secondWord = 0;
  47. for(int j = 0; j < i; j++){
  48. fscanf(matrix, "%d", &num);
  49. if(num == 1){
  50. fprintf(graph,"\t\"");
  51. while(vocabPointer[i][firstWord]!=(char) NULL){
  52. fprintf(graph,"%c",vocabPointer[i][firstWord]);
  53. firstWord++;
  54. }
  55. fprintf(graph,"\"--\"");
  56. while(vocabPointer[j][secondWord]!=(char) NULL){
  57. fprintf(graph,"%c",vocabPointer[j][secondWord]);
  58. secondWord++;
  59. }
  60. fprintf(graph,"\"\n");
  61. }
  62. }
  63. }
  64.  
  65. fprintf(graph,"}");
  66.  
  67. fclose(matrix);
  68. fclose(graph);
  69. fclose(words);
  70.  
  71. return EXIT_SUCCESS;
  72.  
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement