1樓:問明
#include<stdio.h>
#definem100
intmain()
inta[m][m],i,j,msum=0,ssum=0;
intn;
printf("inputn:");
scanf("%d",&n);
printf("請輸入%d*%d的矩陣:\n",n,n);
for(i=0;i<n;++i)
for(j=0;j<n;++j)
scanf("%d",&a[i][j]);
for(i=0;i<n;++i)
msum+=a[i][i];
ssum+=a[i][n-1-i];
printf("主對角線的和是:%d\n斜對角線的和是:%d\n\n",msum,ssum);
return0;
舉例:n:4輸出執行結果:
return的用法:
return的作用是結束正在執行的函式,並返回函式值。return後面可以跟一個常量,變數,或是表示式。
函式的定義一般是這樣的,例如:
inta(inti)//第一個int是函式的返回值的型別,也就是return後面跟的值的型別,a是函式的名稱,括號裡的是傳遞給函式的引數,int是引數的型別,i是引數的名字
...//省略函式體內容
returnb;//b必須與函式頭的返回值一致(此處為int型)
簡單函式舉例:
intaddone(intb)
returnb+1;
該函式的作用是取得一個數,將這個數加上1,再將結果返回
呼叫時這樣:
intresult=addone(2);//此時result的值為3
函式括號裡的引數也可以為變數或能算出值的表示式
以上就是一個基本的函式,一般的函式都有返回值,也就是return後面跟的值,返回值可以為各種資料型別,如:int,float,double,char,a[](陣列),*a(指標),結構或類(c++)
但不是所有函式都有返回值,如果某個函式無返回值,那麼返回值的位置則為「void」關鍵字,此時函式體中無返回值,即無return的值。但是函式中也可出現return,即一個空的return句子,其作用是使函式立即結束,如voidprint()//括號中為空表示無傳遞引數、
printf("a");
printf("b");
return;//函式執行到此處結束
printf("c");
}//該函式只執行到return語句處,即螢幕上輸出的為"ab"
2樓:
#include "stdio.h"
int main()
int a[5][5]=;
int sum[5]=;
int i,j;
printf("請輸入5x5矩陣元素:\n");
for(i=0;i<5;i++)
for(j=0;j<5;j++)
scanf("%d",&a[i][j]);
sum[j]+=a[i][j];
printf("矩陣各理上的元素之和:\n");
for(i=0;i<5;i++)
printf("第%d列:%d\n",i+1,sum[i]);
3樓:天堂妹兒
試試這樣:
#include "stdio.h"
#define n 5
main()}
輸入5x5階的矩陣,程式設計實現: (1)求兩條對角線上的各元素之和。 (2)求兩條對角線上行、列下標均為偶數
4樓:問明
#include"stdafx.h"
#include
using namespace std;
int main(int argc,char*ar**)cout<<"請輸入一個5*5的矩陣:" for(m=0;m<5;m++)//輸入資料for(n=0;n<5;n++) cin>>a[m][n]; int righthe=0,lefthe=0,sum=0;//righthe為對角線右下角元素之和,lefthe為對角線左下角元素之和 for(int i=0;i<5;i++)//輸出資料for(int j=0;j<5;j++) if(i==j) righthe=righthe+a[j]; if(i+j==4&&i!=j) lefthe=lefthe+a[j]; sum=righthe+lefthe; cout 執行效果: 5樓: 我就用c語言吧。 #include main(); int i,j; double s=0.0; for(i=0;i<5;i++) for(j=0;j<5;j++) for(i=0;i<5;i++) for(j=0;j<5;j++) s=s-a[2][2]; printf("\n兩對角線上各元素之和是%f\n",s); s=0.0; for(i=0;i<5;i++) for(j=0;j<5;j++) s=s-a[2][2]; printf("兩對角線上行、列下標均為偶數的元素之和為%f\n",s);} 在下面的5×5魔方矩陣中,每一行、每一列、每一對角線上的元素之和都是相等的,試編寫程式將這些魔方 6樓:匿名使用者 c語言如下: #include int main() else a[i][j]=temp; }for(i=0;i }printf("輸出魔方矩陣n="); scanf("%d",&x); }return 0; }本程式只適合基數,解釋如下: n 為奇數時 (1) 將1放在第一行中間一列; (2) 從2開始直到n×n止各數依次按下列規則存放: 按 45°方向行走,如向右上 每一個數存放的行比前一個數的行數減1,列數加1 (3) 如果行列範圍超出矩陣範圍,則迴繞。 例如1在第1行,則2應放在最下一行,列數同樣加1; (4) 如果按上面規則確定的位置上已有數,或上一個數是第1行第n列時, 則把下一個數放在上一個數的下面。 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 7樓:匿名使用者 ??這個問題不全啊。。。 vb題:使用隨進函式產生0~9之間的隨機整數形成一個5階矩陣元素,計算矩陣元素之和 8樓:匿名使用者 private sub command1_click()dim a(1 to 5, 1 to 5) text1.text = ""for i = 1 to ubound(a, 1) for j = 1 to ubound(a, 2)randomize a(i, j) = int(10 * rnd)text1.text = text1.text & str(a(i, j)) next j text1.text = text1.text & vbcrlfnext iend sub 9樓:匿名使用者 **抄襲sub trygo() dim a(4, 4) as integer, str as string dim i as integer, j as integerfor i = 0 to 4 for j = 0 to 4 a(i, j) = int(10 * rnd)str = str & a(i, j) & " " next j str = str & vbcr next i debug.print str end sub 輸出bai成du 果zhi dao4 4 6 1 4 5 8 5 4 5 2 6 4 6 8 3 3 2 1 5 2 5 3 8 4 答 很明顯的,你做錯了,或者其他什麼原因導致了這樣的結果,因為根據矩陣的乘法運算定義,必須是 只有當矩陣a的列數與矩陣b的行數相等時a b才有意義。一個m n的矩陣a m,n 左乘一個n p的矩陣b n,p 會得到一個m p的矩陣c m,p 二階矩陣乘以三階矩陣怎麼算 千里揮戈闖天涯 二階矩陣就是行... ppt已傳送 按照ppt上面的相信你能夠解答出來的 加油! 沒給具體題 給你個例子看看吧 求a的逆矩陣 a 3 1 4 1 0 0 2 1 5 方法 構造分塊矩陣 a,e 對它進行初等行變換,把左邊一塊化成單位矩陣時,右邊一塊就是矩陣的逆.原理 一般教材中都會有 解 a,e 3 1 4 1 0 0 ... 求逆矩陣要耐心,一步一步來 一定要注意兩邊同時變換,這種題就是得多做熟能生巧,沒有什麼技巧,多練兩道耐下心來,我相信你一定可以的 求完逆矩陣,然後就是做矩陣的懲罰,這個也是沒有問題的但是我覺得這道題最好的方法還是按照解其次方程算,這樣比較快,而且不容易出錯 直接用初等變換的方法比先求逆矩陣再計算乘積...二階矩陣乘以三階矩陣怎麼算,3 3階矩陣乘3 2階矩陣 怎麼算
求3階矩陣的逆矩陣,如何計算3階以內的矩陣求逆矩陣?
求解三階矩陣,三階矩陣求逆公式