C語言求對角元素之和
『壹』 c語言建立一個3*3矩陣,求對角線元素之和
這里所說的對角線元素之和是指兩條對角線上元素的總和嗎?下面的代碼段,可以實現這樣的功能。
int i,j,s=0,a[3][3];
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{scanf("%d",&a[i][j]); //讀取一個元素的值
if(i==j||i+j==2)。 //若是對角線上的元素
s+=a[i][j]; //累加求和
}
printf("%d",s);. //輸出
『貳』 用C語言編寫程序,求某一方陣中對角線元素和。要求:考慮主對角線和副對角線
您好,很高興回答您的問題。
對於一個方陣而言,求主次對角線的和其實並不難,就是要學會分析主次對角線上數據的下標之間的關系。
對於主對角線而言,它的數組元素的下標之間的關系是:行列號是相等的;對於次對角線而言,數組元素的下標關系為:行列號之和為方陣數-1.
#include<stdio.h>
#define N 3
void main()
{int i,j,a[N][N],s1=0,s2=0;
for(i=0;i<N;i++)
for(j=0;j<N;j++)
scanf("%d",&a[i][j]);
for(i=0;i<N;i++)
{s1=s1+a[i][i];
s2=s2+a[i][N-1-i];
}
printf("%5d,%5d",s1,s2);
}
『叄』 c語言求定3*3矩陣中,主副對角線上所有元素之和
#include <stdio.h>
#define N 3
int main() {
int i,a[N][N] = {1,2,3,4,5,6,7,8,9};
int major_diagonal = 0,assist_diagonal = 0;
for(i = 0; i < N; ++i) {
major_diagonal += a[i][i];
assist_diagonal += a[i][N - 1 - i];
}
printf("主要對角線的和為:%d ",major_diagonal);
printf("輔助對角線的和為:%d ",assist_diagonal);
return 0;
}
『肆』 這是C語言編程題,求一個3*3矩陣對角線元素之和
# include <stdio.h>
int main()
{
int i,j,a[3][3];
int sum1 = 0,sum2 = 0; //sum1 主對角線值,sum2 副對角線值。
// 輸入3*3的矩陣。
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
printf("請輸入a[%d][%d]的值是:",i,j);
scanf("%d",&a[i][j]);
}
// 計算對角線的值
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
if(i==j)
sum1 = sum1 + a[i][j];
if(i+j==2)
sum2 = sum2 + a[i][j];
}
printf("主對角線之和是:%d\n副對角線之和是:%d",sum1,sum2);
return 0;
}
『伍』 C語言:編寫程序,求一個n×n矩陣對角線元素之和。
求一個n×n矩陣對角線元素之和的源代碼如下
public class lianxi28 {
public static void main(String[] args) {
System.out.println("請輸入九個整數:");
Scanner in = new Scanner(System.in);
int[][] a = new int[3][3];
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
a[i][j]=in.nextInt();
}
}
System.out.println("你輸入的n×n矩陣是:");
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
System.out.print(a[i][j]+" ");
}
System.out.println();
}
System.out.println();
int sum=0;
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
if(i==j){
sum=sum+a[i][j];
}
System.out.println(sum);
}
(5)C語言求對角元素之和擴展閱讀
1、用arrange生成一個數組,元素為0,1,...,8,然後利用reshape生成一個n×n的矩陣。
2、利用for循環將該矩陣的主對角線上的元素相加,然後輸出結果。
『陸』 用c語言求方陣中對角線元素之和 (數組)
// 假設數組元素有x * x個,數組名為 a;
//即,有一個寬為x,高為x的方陣;
int count = 0;
for(int i = 0;i < x;++i)
count += a[i * x + i];
『柒』 c++,C語言編程問題:求一個 3×3 矩陣對角線元素之和。
#include<stdio.h>
#define n 3
int main()
{
int i,j,a[n][n],sum=0;
printf("請輸入矩陣(3*3): ");
for(i=0;i<n;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
for(i=0;i<n;i++)
sum+=a[i][i];
printf("對角線之和為:%d ",sum);
return 0;
}
C++
代碼
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int a[3][3],m=0,n=0;
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
cin>>a[i][j];
for(int i=0;i<3;i++)
{
m+=a[i][i];
n+=a[i][2-i];
}
cout<<m<<' '<<n<<endl;
return 0;
}
(7)C語言求對角元素之和擴展閱讀:
一、return在函數中的作用
我們如果將函數看做一個加工廠,參數就是我們向加工廠投入的原料,具體的函數功能實際上就是加工的過程,而return語句代表返回值,就是加工廠在實現加工之後給「投資人」的成品。
二、return語句的特點
1、在函數當中,遇到return語句之後就意味著函數運行的結束,在此之後的代碼是不運行的。
2、它不支持任何運算也沒有任何內建方法,和任何其他的數據類型比較是否相等時永遠返回false,也可以將None賦值給任何變數。
3、執行到return語句時,會退出函數,return之後的語句不再執行。但將return語句放在try語句塊中,是個例外。
三、return的默認值:return函數默認的返回值為undefined。
『捌』 求一個3×3的整型矩陣對角線元素之和(用c語言)
c語言求一個3×3的整型矩陣對角線元素之和步驟如下:
1、打開Dev-c++軟體,點擊「新建源代碼」。
『玖』 C語言作業:求主次對角線元素之和
寫的是4*4矩陣的主次對角線元素之和,其他改下數字即可
#include<stdio.h>
#define n 4
void main()
{int i,j,sum1=0,sum2=0;
pirntf("please input :\n");
for(i=0;i<n;i++)
for(j=0;j<n;j++)
{
scanf("%d",&a[i][j]);
}
for(i=0;i<n;i++)
for(j=0;j<n;j++)
{if(i==j) sum1+=a[i][j];/*主對角線和為sum1,次對角線之和為sum2*/
if(i+j==3) sum2+=a[i][j];
}
printf("sum1=%d\nsum2=%d",sum1,sum2);
printf("\n");
}
『拾』 用c語言任意輸入一個3行3列的二維數組,求對角元素之和
#include<stdio.h>
#defineM3
#defineN3
voidcreateMatrix(intmatrix[M][N],intm,intn){/*創建矩陣*/
inti,j;
printf("開始輸入矩陣內容(%d行%d列) ",m,n);
for(i=0;i<m;i++){
printf("輸入第%d行的%d個元素:",i+1,n);
for(j=0;j<n;j++)
scanf("%d",&matrix[i][j]);
}
}
voidprintMatrix(intmatrix[M][N],intm,intn){/*列印矩陣*/
inti,j;
for(i=0;i<m;i++){
for(j=0;j<n;j++)
printf("%d ",matrix[i][j]);
printf(" ");
}
}
voidprintMatrix_diagonal(intmatrix[M][N],intm,intn){/*列印對角線元素和*/
inti,j;
for(i=0;i<m;i++){
for(j=0;j<n;j++)
if(i==j||i+j==M-1)
printf("%d ",matrix[i][j]);
else
printf(" ");
printf(" ");
}
}
intdiagonalSum(intmatrix[M][N],intm,intn){/*求對角線元素和*/
inti,j,sum=0;
for(i=0;i<m;i++){
for(j=0;j<n;j++)
if(i==j||i+j==M-1)
sum+=matrix[i][j];
}
returnsum;
}
intmain(void){
intmatrix[M][N];
createMatrix(matrix,M,N);
printf("====================================================== ");
printf("您輸入的矩陣為: ");
printMatrix(matrix,M,N);
printf("對角線元素為: ");
printMatrix_diagonal(matrix,M,N);
printf("對角線元素之和為: ");
printf("%d ",diagonalSum(matrix,M,N));
return0;
}