鱼C论坛

 找回密码
 立即注册
查看: 2652|回复: 3

初学C语言,帮忙看个程序。

[复制链接]
发表于 2011-12-29 10:33:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
题目的要求是:
输入4×4的数组,编写程序实现:
① 求出对角线上各元素的和;
② 求出对角线上行、列下标均为偶数的各元素的积;
③ 找出对角线上其值最大的元素和它在数组中的位置。


int d[4][4];
int i4,j4,line=0,list=0;
int result=1,sum=0,maxnumber;//result用来存放乘积,sum 用来存放和,maxnumber用于存最大的那个数。
for(i4=0;i4<4;i4++)
{for(j4=0;j4<4;j4++)
        {scanf("%d",&d[i4][j4]);}}
        printf("\n");
for(i4=0;i4<4;i4++)
{for(j4=0;j4<4;j4++)
printf("%4d",d[i4][j4]);}
maxnumber=d[0][0];

for(i4=0;i4<4;i4++)
{        for(j4=0;j4<4;j4++)
                if((i4+j4==3)||(i4==j4))
                        sum+=d[i4][j4];
                if(((i4+j4==3)||(i4==j4))&&(i4%2==0)&&(j4%2==0))
                        result*=d[i4][j4];

}

for(i4=0;i4<4;i4++)
        for(j4=0;j4<4;j4++)
                if((i4+j4==3)||(i4==j4))
                        if(maxnumber<d[i4][j4])
                                maxnumber=d[i4][j4];
                                line=i4;
                                        list=j4;
printf("\n");
printf("sum = %4d\n",sum);
printf("result = %4d\n",result);
printf("maxnumber = %4d\n",maxnumber);
printf("line=%d\n list=%d\n",line,list);



这个有错,我看了很就,还是找不出。

不过求乘积那里总是得不到想要的值(比如说输入的是1到16.结果乘积是1,肯定不对的嘛~~~)

求大神教教我~~
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2011-12-29 18:20:15 | 显示全部楼层
:L 编译倒是通过了,然后程序输入部分没任何提示 不知道这个是要干嘛的啊
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2011-12-30 10:24:20 | 显示全部楼层
可能程序上忘记写提示:这个程序的目的其实是
输入4×4的数组,编写程序实现:
① 求出对角线上各元素的和;
② 求出对角线上行、列下标均为偶数的各元素的积;
③ 找出对角线上其值最大的元素和它在数组中的位置。



输入那里其实是要你输入16个数组元素。。。
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-1-10 16:22:05 | 显示全部楼层
我试过了,1到16程序没错,运行也没错,就是格式不太好,该加括号加括号,再试试
#include <stdio.h>

void main()
{
       
        int d[4][4];
        int i4,j4,line=0,list=0;
        int result=1,sum=0,maxnumber;//result用来存放乘积,sum 用来存放和,maxnumber用于存最大的那个数。
        for(i4=0;i4<4;i4++)
        {
                for(j4=0;j4<4;j4++)
                {
                        scanf("%d",&d[i4][j4]);
                }
        }
        printf("\n");
        for(i4=0;i4<4;i4++)
        {       
                for(j4=0;j4<4;j4++)
                {
                        printf("%4d",d[i4][j4]);
                }
                printf("\n");
        }
        maxnumber=d[0][0];
       
        for(i4=0;i4<4;i4++)
        {        
                for(j4=0;j4<4;j4++)
                {
                        if((i4+j4==3)||(i4==j4))
                        {
                                sum=sum+d[i4][j4];
                        }
                       
                        if(((i4+j4==3)||(i4==j4))&&(i4%2==0)&&(j4%2==0))
                        {
                                result*=d[i4][j4];
                        }
                }
        }
       
        for(i4=0;i4<4;i4++)
        {
                for(j4=0;j4<4;j4++)
                {
                        if((i4+j4==3)||(i4==j4))
                        {
                                if(maxnumber<d[i4][j4])
                                {
                                        maxnumber=d[i4][j4];
                                        line=i4;
                                        list=j4;
                                }
                        }
                }
        }
        printf("\n");
        printf("sum = %4d\n",sum);
        printf("result = %4d\n",result);
        printf("maxnumber = %4d\n",maxnumber);
        printf("line=%d\nlist=%d\n",line,list);
}
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-10 12:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表