#include <stdio.h>
#include "week7.h"
//多项式相加
//两个多项式,幂次相同的系数相加
//输入幂次 系数,第一行一定是最高次幂,最后一行0次幂
void SumItem(){
//两个数组,分别存放输入数据
//一个数组存放输出
int inputA[100];
int inputB[100];
//数组初始化为0
for(int i=0;i<100;i++){
inputA[i]=0;
inputB[i]=0;
}
//读取数据
//两个变量,一个放幂次,一个放系数
int a;
int b;
do{
scanf("%d %d",&a,&b);
inputA[a]=b;
}while(a!=0);
//读第二个数组
do{
scanf("%d %d",&a,&b);
inputB[a]=b;
}while(a!=0);
//数组相加,系数结果存放在inputA中
for(int i=0;i<100;i++){
inputA[i]+=inputB[i];
}
//输出
for(int i=99;i>=0;i--){
if(inputA[i]!=0&&i!=0){
printf("%d%c%d+",inputA[i],'x',i);
}
else if(i==0){
printf("%d",inputA[i]);
}
else{
continue;
}
}
}
//寻找n*n矩阵的鞍点(i,j),即它是第i行最大的数,也是第j列最小的数
//先找行的最大数,判断是否是最小数,是则输出,不是则舍弃
void AnPoint(){
//读矩阵行列数
int a;
scanf("%d",&a);
//读矩阵
int array[a][a];
for(int i=0;i<a;i++){
for(int j=0;j<a;j++){
scanf("%d",&array[i][j]);
}
}
for(int i=0;i<a;i++){
//找行中的最大数
//标记最大数列号
int col=0;
int max=array[i][0];
for(int j=1;j<a;j++){
if(array[i][j]>max){
max=array[i][j];
col=j;
}
}
//标记是否找到最小值
int find=0;
//判断数是否为列的最小值
//有小于max,进入下一轮循环
for(int k=0;k<a;k++){
if(array[k][col]<max){
break;
}
if(k==a-1){
find=1;
printf("鞍点为%d %d",i,col);
goto end;
}
}
if(find==0&&i==a-1){
printf("没有鞍点");
}
}
end:
return;
}