int main(int argc, char * argv[]) { int * arr; int iter; int length = 12; arr = malloc(length * sizeof(int)); if (arr == NULL) { printf("malloc fails.\n"); return EXIT_FAILURE; } for (iter = 0; iter < length; iter ++) { arr[iter] = iter; } printf("Original array: "); for (iter = 0; iter < length; iter ++) { printf("%2d ", arr[iter]); } printf("\n"); multi2(arr, length); printf("New array: "); for (iter = 0; iter < length; iter ++) { printf("%2d ", arr[iter]); } printf("\n"); free (arr); return EXIT_SUCCESS; }
int main() { int x,y,z,r; printf("Ingrese numero A "); scanf("%d",&x); printf("Ingrese numero B "); scanf("%d",&y); multi1(x,y,&z); printf("La multiplicacion de %d con %d es %d\n",x,y,z); z = multi2(x,y); printf("La multiplicacion de %d con %d es %d\n",x,y,z); system("pause"); }
int main() { int start, end; field28 a=0x57, b=0x00; field28 randarr[100000]; int i; srand(time(NULL)); for(i=0; i<100000; i++) randarr[i] = (field28)rand(); //multi2 函数计算 start = clock(); for(i=0; i<100000; i++){ a = randarr[i]; b = multi2(a,inverse(a)); } printf("0x%hhx * 0x%hhx = 0x%hhx\n", a, inverse(a), b); end = clock(); printf("multi2 计算次数:%d, 用时:%fs\n",i, (double)(end-start)/CLOCKS_PER_SEC); //multi 函数查表 start = clock(); for(i=0; i<100000; i++){ a = randarr[i]; b = multi(a,inverse(a)); } printf("0x%hhx * 0x%hhx = 0x%hhx\n", a, inverse(a), b); end = clock(); printf("multi 计算次数:%d, 用时:%fs\n",i, (double)(end-start)/CLOCKS_PER_SEC); //mult 不调用函数,直接查表 start = clock(); for(i=0; i<100000; i++){ a = randarr[i]; b = mult[a][inve[a]]; } printf("0x%hhx * 0x%hhx = 0x%hhx\n", a, inverse(a), b); end = clock(); printf("mult[256][256] 计算次数:%d, 用时:%fs\n",i, (double)(end-start)/CLOCKS_PER_SEC); return 0; }