91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 3KB
    文件類型: .c
    金幣: 1
    下載: 0 次
    發布日期: 2021-05-08
  • 語言: 其他
  • 標簽: OS??

資源簡介

多線程矩陣乘法:傳入兩個4*4矩陣A、B,求出A×B的結果矩陣C;要求:(1)主線程接受用戶輸入的矩陣A/B的數據,并打印原始矩陣A/B ;(2)用4個工作線程分別計算結果矩陣C的左上、右上、左下、右下四個2*2區域的結果;(3)主線程等待4個工作線程完成,并打印矩陣C最終的最終結果。

資源截圖

代碼片段和文件信息

/*
5.?多線程矩陣乘法:傳入兩個4*4矩陣A、B,求出A×B的結果矩陣C;
要求:
(1)主線程接受用戶輸入的矩陣A/B的數據,并打印原始矩陣A/B?;
(2)用4個工作線程分別計算結果矩陣C的左上、右上、左下、右下四個2*2區域的結果;
(3)主線程等待4個工作線程完成,并打印矩陣C最終的最終結果。
*/
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#define?SIZE?4

int?matrix_A[SIZE][SIZE];
int?matrix_B[SIZE][SIZE];
int?matrix_C[SIZE][SIZE]={0};

void?getMatrix_A();/*輸入矩陣A*/
void?getMatrix_B();/*輸入矩陣B*/
void?outMatrix_A();/*輸出矩陣A*/
void?outMatrix_B();/*輸出矩陣B*/
void?outMatrix_C();/*輸出矩陣C*/
void?*left_up();/*計算矩陣左上區域*/
void?*left_down();/*計算矩陣左下區域*/
void?*right_up();/*計算矩陣右上區域*/
void?*right_down();/*計算矩陣右下區域*/

int?main(int?argcchar?*argv[])
{
????getMatrix_A();
????getMatrix_B();
????outMatrix_A();
????outMatrix_B();
????//使用線程計算矩陣左上、左下、右上、右下四個區域
????pthread_t?tid1tid2tid3tid4;
????pthread_create(&tid1NULLleft_upNULL);
????pthread_create(&tid2NULLleft_downNULL);
????pthread_create(&tid3NULLright_upNULL);
????pthread_create(&tid4NULLright_downNULL);
????pthread_join(tid1NULL);
????pthread_join(tid2NULL);
????pthread_join(tid3NULL);
????pthread_join(tid4NULL);

????outMatrix_C();

????return?0;
}
void?getMatrix_A()/*輸入矩陣A*/
{
????int?ij;
????write(1“Input?matrix?A:\n“16);
????for(i=0;i????????for(j=0;j????????????scanf(“%d“&matrix_A[i][j]);
}
void?getMatrix_B()/*輸入矩陣B*/
{
????int?ij;
????write(1“Input?matrix?B:\n“16);
????for(i=0;i????????

評論

共有 條評論