#includestdio.h
創(chuàng)新互聯(lián)2013年開(kāi)創(chuàng)至今,公司以成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、系統(tǒng)開(kāi)發(fā)、網(wǎng)絡(luò)推廣、文化傳媒、企業(yè)宣傳、平面廣告設(shè)計(jì)等為主要業(yè)務(wù),適用行業(yè)近百種。服務(wù)企業(yè)客戶成百上千家,涉及國(guó)內(nèi)多個(gè)省份客戶。擁有多年網(wǎng)站建設(shè)開(kāi)發(fā)經(jīng)驗(yàn)。為企業(yè)提供專(zhuān)業(yè)的網(wǎng)站建設(shè)、創(chuàng)意設(shè)計(jì)、宣傳推廣等服務(wù)。 通過(guò)專(zhuān)業(yè)的設(shè)計(jì)、獨(dú)特的風(fēng)格,為不同客戶提供各種風(fēng)格的特色服務(wù)。
#includestdlib.h
void memory(int **p,int m,int n); //分配的內(nèi)存的函數(shù);
void readdata(int**p,int m,int n);
void plus(int **u,int **i,int m,int n); //求和函數(shù),要求兩個(gè)矩陣同型
void redu(int **u,int **i,int m,int n); //求差,要求兩個(gè)矩陣同型
void mult(int **u,int **i,int m,int n); //矩陣的積;乘法要求前一個(gè)矩陣的行數(shù)等于后一個(gè)矩陣的列數(shù);
void release(int **p,int m,int n); //釋放內(nèi)存的函數(shù);
int main() //也可使用switch語(yǔ)句來(lái)選擇求和求差求積
{
int m,n;
scanf("%d%d",m,n); //輸入m,n兩個(gè)數(shù),確定矩陣要分配內(nèi)存的大小
int **k,**q,**o;
memory(**k,m,n);
memory(**q,m,n);
memory(**o,m,n); //備用,用來(lái)存放結(jié)果的一塊內(nèi)存;
readdata(**k,m,n);
readdata(**q,m,n);
plus(**k,**q,m,n);
redu(**k,**q,m,n);
mult(**k,**q,m,n); //在本行加//則可不求矩陣乘法,使程序適用于一切m*n的矩陣加法;
realease(**k,m,n);
realease(**q,m,n);
}
void memory(int **p,int m,int n)
{
p=*(int**)malloc(m*sizeof(int*);
for(i=0;in;i++)
{
p[i]=*(int*)malloc(n*sizeof(int));
}
}
void release(int **p,int m,int n)
{
for(i=0;in;i++)
{
free(p[i]);
p[i]=0;
}
free(p);
p=0;
}
void readdata(int **p,int m,int n)
{
int i,j;
for(i=0;im;i++)
{
for(j=0;jn;j++)
scanf("%d",p[i][j]); //要求用戶由行到列輸入矩陣的數(shù)據(jù);
}
}
void plus(int **u,int **i,int m,int n)
{
int r,j;
for(r=0;rm;r++)
{
for(j=0;jn;j++)
printf("%5d",u[r][j]+i[r][j]);
printf("\n");
}
}
void redu(int **u,int **i,int m,int n)
{
int r,j;
for(r=0;rm;r++)
{
for(j=0;jn;j++)
printf("%5d",u[r][j]-i[r][j]);
printf("\n");
}
void mult(int **u,int **i,int m,int n)
{
int r,j,k,d=0;
for(r=0;rm;r++)
{
for(j=0;jn;j++)
{
for(k=0;km;k++) //這里分號(hào)錯(cuò)寫(xiě)成了逗號(hào)
d=d+u[r][k]*i[k][r];
printf("%d",d);
}
d=0;
printf("\n");
}
}
#include?stdio.h
#include?ctype.h
#define?MAX_STR_LEN?100
int?strToInt(char?s[],int?base)?{
int?i?=?0,result?=?0,sign?=?1;
if(s[i]?==?'+')?{?sign?=?1;?++i;?}
else?if(s[i]?==?'-')?{?sign?=?-1;?++i;?}
if(base??10)?{?//?數(shù)基在10以上時(shí)
while(s[i])?{
if(islower(s[i]))?result?=?base?*?result?+?s[i]?-?'a'?+?10;
else?if(isupper(s[i]))?result?=?base?*?result?+?s[i]?-?'A'?+?10;
else?if(isdigit(s[i]))?result?=?base?*?result?+?s[i]?-?'0';
++i;
}
}
else?{?//?數(shù)基為?0?--?10?時(shí)
while(s[i])?{
if(isdigit(s[i])??(s[i]?-?'0'??base))
result?=?base?*?result?+?s[i]?-?'0';
++i;
}
}
return?sign?*?result;
}
int?main()?{
int?base;?
char?s[MAX_STR_LEN];?
while(?(scanf("%d:",?base)?!=?EOF)??(gets(s)?!=?NULL)?)
printf("%d\n",?strToInt(s,?base));?
return?0;?
}
#includestdio.h
void?main()
{
int?a[15][15],i,j,k,t,b;
printf("請(qǐng)輸入一個(gè)3行3列的矩陣:\n");
/*for(i=0;i3;i++)
for(j=0;j3;j++)
scanf("%d",a[i][j]);
printf("請(qǐng)輸入另一個(gè)3行3列的矩陣\n");
for(k=0;k3;k++)
for(t=0;t3;t++)
scanf("%d",a[k][t]);*///----此處覆蓋掉了矩陣1;
for(i=0;i3;i++)
for(j=0;j3;j++)
scanf("%d",a[i][j]);
printf("請(qǐng)輸入另一個(gè)3行3列的矩陣\n");
for(k=0;k3;k++)
for(t=0;t3;t++)
scanf("%d",a[k+3][t+3]);
printf("矩陣【1】\n");
for(i=0;i3;i++){
for(j=0;j3;j++)
printf("%d?",a[i][j]);
printf("\n");
}
printf("矩陣【2】\n");
for(i=0;i3;i++){
for(j=0;j3;j++)
printf("%d?",a[i+3][j+3]);
printf("\n");
}
printf("請(qǐng)選擇要進(jìn)行的運(yùn)算:1?相加?2?相乘\n");
scanf("%d",b);
//----------樓主此處以下的四個(gè)for一一嵌套算出來(lái)的結(jié)果沒(méi)什么意義。
if(b==1)
{
printf("相加:\n");
for(i=0;i3;i++)
for(j=0;j3;j++)
a[i][j]=a[i][j]+a[i+3][j+3];
for(i=0;i3;i++){
for(j=0;j3;j++)
printf("%d\t",a[i][j]);
printf("\n");}
}
if(b==2)
{
printf("相乘:\n");
for(i=0;i3;i++)
for(j=0;j3;j++)
a[i+6][j+6]?=?a[i][0]*a[3][j+3]?+?a[i][1]*a[4][j+3]?+?a[i][2]*a[5][j+3];
for(i=0;i3;i++){
for(j=0;j3;j++)
printf("%d\t",a[i+6][j+6]);
printf("\n");
}
}
}
復(fù)制后可直接編譯運(yùn)行,結(jié)果如下:格式可自行修改。
#include "stdafx.h" //這是個(gè)什么東東
#include stdio.h
int main(int argc, char* argv[])
{
int i,j,c[4][4];
int a[4][4]={{1},{2},{3},{4}};
int b[4][4]={{0,1},{0,2},{0,3},{0,4},};
for(i=0;i4;i++) //這多了一個(gè)分號(hào)
{
for(j=0;j4;j++)
c[i][j]=(a[i][j]+b[i][j]);
}
printf("矩陣A與B相加如下所示:\n");
for(i=0;i4;i++)
{
for(j=0;j4;j++)
printf("%5d",c[i][j]);
printf("\n");
}
return 0;
}
矩陣相加會(huì)簡(jiǎn)單點(diǎn),設(shè)a[2][3]和b[2][3],只要在相應(yīng)的地方相加就行了,
for(i=0;i2;i++)
for(j=0;j3;j++)
c[i][j]=a[i][j]+b[i][j];
兩矩陣相乘,
int a[][3]={1,2,3,4,5,6,7,8,9};//A為N×P矩陣,
//假設(shè)是3*3的矩陣
int b[][5]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
//B為P×M矩陣,假設(shè)是3*5的矩陣
int c[3][5]={0};//結(jié)果矩陣3*5
for(int i=0;i3;i++)
for(int j=0;j5;j++)
for(int k=0;k3;k++)
c[i][j]+=a[i][k]*b[k][j];
新聞名稱(chēng):矩陣加法函數(shù)c語(yǔ)言程序,c語(yǔ)言加法運(yùn)算函數(shù)
本文路徑:http://m.kartarina.com/article48/hsdihp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、網(wǎng)站內(nèi)鏈、微信小程序、網(wǎng)站維護(hù)、網(wǎng)站營(yíng)銷(xiāo)、網(wǎng)站排名
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)