| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1421 人关注过本帖
标题:看看是需要修改哪里 编程题
只看楼主 加入收藏
张小盟
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2016-4-13
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:7 
看看是需要修改哪里 编程题
问题:有一个n*n的矩阵,求两个对角线元素的和。       (有两种情况 一种是奇数型、另一种是偶数型)
#include <stdio.h>
void main()
{
 int i,j;
 int sum=0;                             
 int a[100][100],N;               
 printf("输入是n*n矩阵的n值:");
 scanf("%d",&N);
 printf("输入一个%d*%d矩阵:",N,N);  
 printf("\n");                     
 for(i=0;i<N;i++)
  for(j=0;j<N;j++)
  {
   scanf("%d",&a[i][j]);
  }
    for(i=0;i<N;i++)
 {if(i!=(N-1)/2)
  sum=sum+a[i][i]+a[i][N-1-i];
    else
        sum+=a[i][i];
 }
 printf("矩阵两条对角线之和为: %d\n",sum);
  
}
搜索更多相关主题的帖子: include 对角线 元素 
2016-05-07 18:42
alice_usnet
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:18
帖 子:370
专家分:2020
注 册:2016-3-7
收藏
得分:0 
应该没什么问题

未佩好剑,转身便已是江湖
2016-05-07 18:59
张小盟
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2016-4-13
收藏
得分:0 
回复 2楼 alice_usnet
运行起来是没有问题不过就是结果出错误了比如输入n为6
1 2 3 4 5 6
2 3 4 5 6 7
3 4 5 6 7 8
4 5 6 7 8 9
5 6 7 8 9 10
6 7 8 9 10 11
正确的答案应为72   而运行结果为66   
图片附件: 游客没有浏览图片的权限,请 登录注册
2016-05-07 19:17
张小盟
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2016-4-13
收藏
得分:0 
回复 楼主 张小盟
奇数可以、而偶数却不行了哦多克
2016-05-07 19:22
alice_usnet
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:18
帖 子:370
专家分:2020
注 册:2016-3-7
收藏
得分:0 
else 里面判断一下
程序代码:
else
  if(N%2==0)
    sum+=a[i][i]+a[i][N-1-i];
  else
    sum+=a[i][i];



[此贴子已经被作者于2016-5-7 19:59编辑过]


未佩好剑,转身便已是江湖
2016-05-07 19:56
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
程序代码:
#include <stdio.h>
main()
{
    printf("输入是N*N矩阵的N值:");
    int N;
    scanf("%d",&N);
    int a[N][N];
    for (int i=0; i<N; i++)
        for (int j=0; j<N; j++)
            a[i][j] = N*i + j+1;
    for (int i=0; i<N; i++)
    {
        for (int j=0; j<N; j++)
            printf("%6d", a[i][j]);
        printf("\n");
    }
    int sum = 0;
    for (int i=0; i<N; i++)
    {
        sum += a[i][i] + a[N-1-i][i]; 
    }
    printf("矩阵两条对角线之和为: %d\n",sum);
}
2016-05-07 21:35
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
收藏
得分:20 
最后一个for循环里的代码改成:sum=sum+a[i][i]+a[i][N-i-1]行了。
2016-05-07 23:53
Alar30
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:10
帖 子:988
专家分:1627
注 册:2009-9-8
收藏
得分:0 
几年不看代码了
突然觉得看到头晕
这是为啥?
2016-05-10 10:43
快速回复:看看是需要修改哪里 编程题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.041622 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved