关于求鞍点的程序 不知道那里错了。。编了两种
程序代码:
#include<stdio.h> int main(void) { int i,j,n,row,col,row1,num,num1,a[6][6]; row=col=row1=num=num1=0; printf("Enter n=\n"); scanf("%d",&n); for(i=0;i<n;i++) for(j=0;j<n;j++) scanf("%d",&a[i][j]); for(i=0;i<n;i++){ /*find max*/ num=a[i][0]; for(j=0;j<n;j++){ if(a[i][j]>num){ num=a[i][j]; row=i; col=j; } } /*find min*/ num1=a[0][col]; for(i=0;i<n;i++){ if(a[i][col]<num1){ row1=i; break; } } //printf("a[%d][%d]",row,col); //printf("a[%d][%d]",row1,col); /*check a[row][col]*/ if(row==row1){ printf("a[%d][%d]",row,col); break; } } if(row!=row1)printf("No!\n"); return 0; }
还有一个
程序代码:
#include<stdio.h> int main(void) { int i,j,indexh,indexl,n,a[6][6],x,b; indexh=indexl=b=0; printf("Enter n=\n"); scanf("%d",&n); for(i=0;i<n;i++) for(j=0;j<n;j++) scanf("%d",&a[i][j]); for(i=0;i<n;i++){ for(j=0;j<n;j++){ if(j==0)x=a[i][0]; else if(a[i][j]>x){ x=a[i][j]; indexl=j; indexh=i; } } for(i=0;i<n;i++){ x=a[indexh][indexl]; if(a[i][indexl]<x)b=a[i][j]; } } if(b!=a[indexh][indexl])printf("No!"); else printf("a[%d][%d]\n",indexh,indexl); return 0; }