■
//compile:gcc 011-1.c -o 011-1 -lm #include <stdio.h> #include <math.h> double info(int c1,int c2){ int i; //int array[5] = {4, 3, 8, 9, 0}; double list[2]; double pr_c1=(double)c1/(c1+c2),pr_c2=(double)c2/(c1+c2),result; list[0]=pr_c1,list[1]=pr_c2; for (i=0;i<2;i++){ result += list[i]*log2(list[i]); //printf("list[i]=%f , result = %f\n", list[i], result); } return (-1)*result; } int main(void) { double c1=3,c2=5; printf("entropy:%f\n",info(c1,c2)); return 0; }