求救c++编程

来源:百度知道 编辑:UC知道 时间:2024/05/02 09:49:58
帮忙做下下面的题
1,一个3 * 3的二维数组
34,91,83
56,93,29
12,88,62

(1),找出最小的数和其所在的下标位置,并输出该数及其坐标。
(2),优化你的代码,使其能够在任意行数和任意列数的二维数组中找出最小数及其坐标。

2,将一个数组中的元素按从小到大顺序排序,并输出。排序可用冒泡排序法。
然后向该数组中插入一个任意数,并将该数放到数组中适当的位置,并使数组仍然有序。

3,17个人围成一圈,编号为1-17,从第一号开始报数,报到3的倍数的人离开,一直数下去,直到最后只剩下一个人,输出此人的编号。

4,求两个矩阵的相乘。

5,7 88,29,79
8,3 * 12,3,6 = 108,30,69
7,4 4,2,7 100,29,70

计算方法如下:

5*12 + 7*4 = 88
5*3 + 7*2 = 29
5*6 + 7*7 = 79

5,求一个3*3的矩阵中对角线元素之和。优化代码,使其能够计算任意行数和列数的矩阵的对角线之和。

6. 将一个数组逆序输出

7. 输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
谢谢了! 用c++

#include <stdio.h>
int main()
{
int array[3][4]={{20,-5,9,8},{21,-21,68,13},{12,0,15,56}};
int max = array[0][0];
int maxi = 0;
int maxj = 0;

for(int i=0;i<3;i++)
{
for(int j=0;j<4;j++)
{
if(max<array[i][j])
{
max = array[i][j];
maxi = i;
maxj = j;
}
}
}

printf("最大值是第%d行第%d列:%d",maxi+1,maxj+1,max);

return 0;
}

不想再帮人做作业了。这个是以前写的你看看是否有用吧。