}
for(l=0;l if(op[i][y]!=op[x][k])/*op[i][y]代表a*(b*c)*/ { } printf(\运算是不可结合!\\n\ a[i],a[j],a[k],op[x][k],a[i],a[j],a[k],op[i][y]); flag=0;/*不满足结合性*/ if(op[i][j]==a[l]) x=l;/*op[i][j] 代表a*b*/ if(op[j][k]==a[l]) y=l;/*op[j][k] 代表b*c*/ if(flag) printf(\运算是可结合!\\n\有幺元e: flag=0; for(i=0;i for(j=0;j printf(\群有幺元%d!\\n\e=a[i]; flag=1; break; if(op[i][j]!=a[j] || op[j][i]!=a[j]) break; if(j==N) } if(!flag) printf(\群没有幺元!\\n\A中任何元素都有逆元: flag=1; for(i=0;i for(j=0;j if(op[i][j]==e && op[j][i]==e) break;/*e是幺元*/ { flag=0; printf(\中元素%d没有逆元!\\n\ if(j==N) } if(flag) printf(\中任何元素都有逆元!\\n\