C语言编程: 输入一个5*5的数组,求其对角线上行、列下标均为偶数的各元素之和。求大神帮忙解答一下
#include
void main()
{
int i, j, array[5][5], sum=0;
// 输入矩阵
printf("请输入5*5矩阵:
");
for (i=0; i<5; ++i)
{
for (j=0; j<5; ++j)
{
scanf("%d", &array[i][j]);
}
}
// 计算和
for (i=0; i<5; ++i)
{
if (i%2==1)
{
sum += array[i][i];
sum += array[i][4-i];
}
}
// 显示和
printf("和为%d
", sum);
}
#include"stdafx.h"
#include<iostream>
using namespace std;
int main(int argc,char*argv[])
{
cout<<"请输入一个5*5的矩阵:"<<endl;
int a[5][5],m,n;
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<i>[j];
}
if(i+j==4&&i!=j)
{
leftHe=leftHe+a<i>[j];
}
}
}
sum=rightHe+leftHe;
cout<<leftHe<<","<<rightHe<<endl;
cout<<"对角线元素之和为"<<sum<<endl;
return 0;
}
运行效果:
扩展资料:#include的使用说明
>\#include叫做“文件包含”。它的功能是用来指定文件的全部内容替换程序中的命令行,从而使指定的文件与当前源文件连成一个源文件。
有如下两种形式:
1、#include"文件名"
2、#include<文件名>
文件包含这两种形式都可以使用,但是有以下几种区别:
使用尖括号:表示编译系统根据系统头文件存放的目录路径去搜索系统头文件,而不是在源文件目录去查找;
使用双引号:表示编译系统首先在当前的源文件目录中查找,若未找到才根据系统的头文件存放的目录路径去搜索系统头文件。
#include<stdio.h>
void main()
{
int n[5][5],sum=0;
printf("输入5*5矩阵:
");
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
scanf("%d",&n[i][j]);
}
}
printf("对角线上下标为偶数的元素有");
for(int i=0;i<5;i++){
if(i%2==0)sum+=n[i][i],printf("%d,",n[i][i]);
}
printf("其和为%d
",sum);
}
请采纳
#include <stdio.h>
void main()
{
int a[4][4], i, j, sum = 0, max, max_x = 0, max_y = 0;
long pro = 1;
printf("enter: ");
for(i = 0; i < 4; i++)
for(j = 0; j < 4; j++)
scanf("%d", &a[i][j]); //输入
max = a[0][0]; //初始化max
for(i = 0; i < 4; i++)
for(j = 0; j < 4; j++)
if(i == j || i + j == 3) { //判断是否在对角线上
sum = sum + a[i][j]; //计算和
if(i%2 == 0 && j%2 == 0) //判断下标是否都为偶数
pro = pro * a[i][j]; //计算积
if(a[i][j] > max) { //找最大数
max = a[i][j];
max_x = i;
max_y = j;
} //如果最大数不止一个,将输出坐标最大的那个的坐标
printf("
sum = %d;
product = %ld;
maxnumber = %d, located in (%d, %d).", sum, pro, max, max_x, max_y);
}
实印先必: #include <stdio.h> void main() {int a[5][5]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25},i,j,sum1=0,sum2=0;for (i=0;i<5;i++) { for(j=0;j<5;j++) { if(i==j) sum1=sum1+a[i][j]; if(i+j==4) sum2=sum2+a[i][j]; }}printf("%d\n%d\n",sum1,sum2);}
宁洱哈尼族彝族自治县13775174736: 利用c语言编写 要求输入一个5*5的数组求其最大值,行号,列号 - ?
实印先必: 呵呵!同意楼上的观点,有一句有点错误改一下就得了 scanf("%d",str[i][j]);改成 scanf("%d",&str[i][j]); //加个地址运算就更完美了
宁洱哈尼族彝族自治县13775174736: C语言,输入一个5*5的二维数组,将各行最大值的坐标放置在一个新的一维数组中,最后按照下面的格式输出:第0行:12 34 23 45 7 最大值为45,坐标是(0,4),用C语言编写一个程序 - ?
实印先必: int i,j,k,m,b[5],a[5][5]={初始化25个数};for(i=0;i<5;i++){b[i]=a[i][0];for(j=0;j<4;j++)for(k=j+1;k<5;k++)if(a[i][j]<4;j++)printf("%d",a[i][j]);printf("最大值是%d,坐标是(%d,%d)",b[i],i,m);}
宁洱哈尼族彝族自治县13775174736: 输入一个5*5的数组,分别求其主对角线和辅对角线上元素之和.?
实印先必: //完整代码如下: #include <stdio.h> void main() { int a[5][5] = {0};//元素值 int iRow = 0, iCol = 0; //行、列坐标 //输入 printf("Please input: \n"); for (iRow=0; iRow<5; iRow++) for (iCol=0; iCol<5; iCol++) scanf("%d", &a[iRow][iCol]); //输出 ...
宁洱哈尼族彝族自治县13775174736: c语言编程一个5*5的数组,用0把周围填充 - ?
实印先必: #include "stdio.h" int main(void){ int a[5][5],i,j; for(i=0;i for(j=0;j if(i==0 || j==0 || i==4 || j==4) a[i][j]=0; else a[i][j]=i+j+1; for(i=0;i for(j=0;j printf("\n"); } return 0; }
宁洱哈尼族彝族自治县13775174736: 输入5乘5的数组,编写程序实现求出对角线个元素的和 - ?
实印先必: #includevoid main() { int CArray[5][5]; int i = 0; int j = 0; int sum = 0; printf("请输入一个5*5的矩阵:\n"); for(i=0;i<5;i++) { for(j=0;j<5;j++) { scanf("%d",&CArray[i][j]); } } for(i=0;i<5;i++) { for(j=0;j<5;j++) { if(i == j) sum += CArray[i][j]; if(i+j == 4 && i!=j) sum += CArray[i][j]; } } printf("对角线元素之和为:%d\n",sum); }
宁洱哈尼族彝族自治县13775174736: 1 - 25做成5*5的二维数组 并打印出右上半三角 C语言编程 - ?
实印先必: 可运行的: #include<stdio.h> int main() {int i,j;int a[5][5]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25};int b[5][5];for(i=0;i<5;i++)for(j=0;j<5;j++){if(i>=j) b[j][i]=a[j][i];else b[j][i]=0;}for(i=0;i<5;i++){for(j=0;j<5;j++){if(b[...
宁洱哈尼族彝族自治县13775174736: 用c语言编写程序,通过键盘输入5个字符串,存放在5*5的二维数组中,分别统计这些字符串中出现的数字,小写字母,大写字母,空格,其他字符的个数,并将这些字符打印出来 - ?
实印先必: 下面是我的回答,供你参考,希望能够帮到你. #include <stdio.h> #include <stdlib.h> int main() { char c[5][5],ch; int i,j,D=0,X=0,KG=0,S=0,QT=0; for(i=0; i<5; i++) { for(j=0; j<5; j++) { scanf("%c",&c[i][j]); if(c[i][j]=='\n') scanf("%c",&c[i][j]); } } for(i=...
宁洱哈尼族彝族自治县13775174736: 编写一个C程序,按行顺序为一个5*5的二维数组a赋1到25的自然数,然后输出该数组的左下半三角. - ?
实印先必: program sjx; var a:array[1..5,1..5]of 1..25; x,y,i:1..5; begin    for x:=1 to 5 do      for y:=1 to 5 do        a[x,y]:=(x-1)*5+y;    for x:=1 to 5 do      ...
宁洱哈尼族彝族自治县13775174736: 急急急!!!!!c语言.输入一个5*5矩阵(#define N 5),求以下各值并输出?
实印先必: #include <iostream> using namespace std; #define N 5 int main() { int x[N][N],i,j,sum=0,a=0,b=0,c; for (i=0;i<N;++i) for (j=0;j<N;++j) { scanf("%d",&x[i][j]); sum+=x[i][j]; if (i==j||i==N-j-1) a+=x[i][j]; if (i==0||i==N-1||j==0||j==N-1) b+=x[i][j]; c=...