📄 功能(算法)说明.txt
字号:
1.输入一个N*M的行列式到数组A[N][M]中;
2.求出A靠边元素之和;
int s,i,j;
char strTemp[255];
if(isTranCtrlToValue==false)
{
TranCEditToStrToValue();//将前台输入到界面中的数据保存到后台变量arrayA[][]中---相当于UpdateData(true);
isTranCtrlToValue=true;//判断是否从控件中读出了当前输入的数据
}
s=0;
if(m_EditN==1||m_EditM==1)
{//下面是1行或1列的计算
if (m_EditN==1)
{
for(j=0;j<m_EditM;j++)
s+=arrayA[0][j];
itoa(s,strTemp,10);
MessageBox(strTemp,"此二维数组靠边元素之和的结果");
return;
}
else
{
for(i=0;i<m_EditN;i++)
s+=arrayA[i][0];
itoa(s,strTemp,10);
MessageBox(strTemp,"此二维数组靠边元素之和的结果");
return;
}
}
//下面是2行2列以上的计算...
for (i=0;i<m_EditN;i++)//计算第一行
s+=arrayA[i][0];
for (i=0;i<m_EditN;i++)//计算第最后一行
s+=arrayA[i][m_EditM-1];
for (j=1;j<m_EditM-1;j++)//计算第一列
s+=arrayA[0][j];
for (j=1;j<m_EditM-1;j++)//计算最后一列
s+=arrayA[m_EditN-1][j];
itoa(s,strTemp,10);
MessageBox(strTemp,"此二维数组靠边元素之和的结果");
3.求出A[0][0]开始的互不相邻的各个元素之和;
int s,i,j,k;
int arrTemp[N*M];
char strTemp[255];
if(isTranCtrlToValue==false)
{
TranCEditToStrToValue();//将前台输入到界面中的数据保存到后台变量arrayA[][]中---相当于UpdateData(true);
isTranCtrlToValue=true;//判断是否从控件中读出了当前输入的数据
}
s=0;
k=0;
for(i=0;i<m_EditN;i++)
for(j=0;j<m_EditM;j++)
arrTemp[k++]=arrayA[i][j];
for(i=0;i<k;i+=2)
s+=arrTemp[i];
itoa(s,strTemp,10);
MessageBox(strTemp,"此二维数组从A[0][0]开始的互不相邻的各个元素之和");
4.当N==M时,分别求两条对角线上的元素之和,否则输出N!=M的信息;
int i,j;
int s3;
char strTemp[255];
if(isTranCtrlToValue==false)
{
TranCEditToStrToValue();//将前台输入到界面中的数据保存到后台变量arrayA[][]中---相当于UpdateData(true);
isTranCtrlToValue=true;//判断是否从控件中读出了当前输入的数据
}
if (m_EditN!=m_EditM)
MessageBox ("N!=M","提示");
else
{
s3=0;
for (i=0;i<m_EditN;i++) //求反对角线上的元素和
s3+=arrayA[i][m_EditN-1-i];
itoa(s3,strTemp,10);
MessageBox(strTemp,"求反对角线上的元素和");
s3=0;
for(j=0;j<m_EditN;j++) //求正对角线上的元素和
s3+=arrayA[j][j];
itoa(s3,strTemp,10);
MessageBox(strTemp,"求正对角线上的元素和");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -