1. 程式人生 > 實用技巧 >TestEngine with ID 'junit-vintage' failed to discover tests java.lang.NoSuchMethodError: org.junit.platform.engine.EngineDiscoveryRequest.getDiscoveryListener()

TestEngine with ID 'junit-vintage' failed to discover tests java.lang.NoSuchMethodError: org.junit.platform.engine.EngineDiscoveryRequest.getDiscoveryListener()

  1 #include<stdio.h>
  2 #include<stdlib.h>
  3 
  4 
  5 typedef struct SqList
  6 {
  7     int *elem;//聲明瞭一個名為elem的長度不確定的陣列,也叫“動態陣列”
  8     int length;//記錄當前順序表的長度
  9     int listsize;//記錄順序表分配的儲存容量
 10 }sqList;
 11 
 12 
 13 //初始化線性表
 14 sqList InitList_Sq(int Size)
 15 {
 16     sqList L;
17 L.elem = (int*)malloc(Size * sizeof(int));//構造一個空的順序表,動態申請儲存空間 18 if(!L.elem) //如果申請失敗,作出提示並直接退出程式 19 { 20 printf("初始化失敗\n"); 21 exit(0); 22 } 23 L.length = 1;//空表的長度初始化為1//0位置上的空間不使用 24 L.listsize = Size;//空表的初始儲存空間為Size 25 return L; 26 } 27 28 29 //升序
30 //在有序表a中折半查詢等於k的元素,若找到,則函式值為該元素在表中的位置 31 void binSearch(sqList L,int k) 32 { 33 int low=1; 34 int high=L.length; 35 while(low<=high) 36 { 37 int mid=(low+high)/2; 38 if(k==L.elem[mid]) 39 { 40 printf("元素 %d 的位置為: %d\n", k, mid);//找到待查元素 41
break; 42 } 43 else if(k<L.elem[mid])//未找到,則繼續在前半區間查詢 44 high=mid-1; 45 else//繼續在後半區間查詢 46 low=mid+1; 47 } 48 if(low>high) 49 { 50 printf("不存在你所找的元素,請重新輸入:\n");//找不到,返回0 51 } 52 } 53 54 //降序 55 //在有序表a中折半查詢等於k的元素,若找到,則函式值為該元素在表中的位置 56 void binSearch1(sqList L,int k) 57 { 58 int low=1; 59 int high=L.length; 60 while(low<=high) 61 { 62 int mid=(low+high)/2; 63 if(k==L.elem[mid]) 64 { 65 printf("元素 %d 的位置為: %d\n", k, mid);//找到待查元素 66 break; 67 } 68 else if(k>L.elem[mid])//未找到,則繼續在前半區間查詢 69 high=mid-1; 70 else//繼續在後半區間查詢 71 low=mid+1; 72 } 73 if(low>high) 74 { 75 printf("不存在你所找的元素,請重新輸入:\n");//找不到,返回0 76 } 77 } 78 79 80 int main() 81 { 82 /*判斷升序/降序*/ 83 printf("您想建立升序表還是降序表?(升序請輸入“1” / 降序請輸入“2”)\n"); 84 int p; 85 scanf("%d", &p); 86 87 88 /*建立順序表*/ 89 printf("您想在順序表中輸入幾個元素?\n"); 90 int size; 91 scanf("%d", &size); 92 sqList L1=InitList_Sq(size); 93 94 95 /*輸入順序表中的元素*/ 96 for (int i=1; i<=L1.listsize; i++) 97 { 98 printf("請輸入第 %d 個元素: ", i); 99 scanf("%d", &L1.elem[i]); 100 L1.length++; 101 } 102 103 104 /*輸出順序表*/ 105 printf("輸出順序表:\n"); 106 for (int i=1; i<=L1.listsize; i++) 107 { 108 printf("%d\t",L1.elem[i]); 109 } 110 111 112 /*查詢*/ 113 if(p == 1) 114 { 115 printf("\n"); 116 while(1) 117 { 118 printf("你想查詢的元素是?\n"); 119 int x; 120 scanf("%d", &x); 121 binSearch(L1, x); 122 } 123 } 124 125 if(p == 2) 126 { 127 printf("\n"); 128 while(1) 129 { 130 printf("你想查詢的元素是?\n"); 131 int x; 132 scanf("%d", &x); 133 binSearch1(L1, x); 134 } 135 } 136 return 0; 137 }