关于乱码的另外一种解释

 

关于一个小的问题,而看到的一个大的错误

这个数组为什么会出现乱码?

/* Note:Your choice is C IDE */

#include "stdio.h"

#define A putchar(10);

void main()

{ int s[3][3],i,j;

  int k,y,max;

  printf("/n 开始输入:/n");

   max=s[0][0];            

  for(i=0;i<3;i++)

   for(j=0;j<3;j++)

        scanf("%d",&s[i][j]);

     /* max=s[][] 的位置应该在这里*/

    for(i=0;i<3;i++)

     {

      A

      for(j=0;j<3;j++) 

       printf("%2d",s[i][j]);

     }   

   A

    for(i=0;i<3;i++)

      for(j=0;j<3;j++)

      if(s[i][j]>max)

        { max=s[i][j];

         k=i;

         y=j;

        }

      

      printf(" the 最大值为is %d/n行值为is %d/n the is %d/n",max,k,y);

                                  

这个程序貌似没有问题,你看恩,施舍这个为max但是,是错误的,会出来乱码,你知道我什么吗,,?

请看分析,

这个是因为这个max=s[0][0],的位置错误,你看,要是我在输入之前定义饿了这个max其实,在执行的时候了恩,这个max最后是不被赋值的,你可以分析一习啊,所以,这个max在下面的比较中其实是一个随机值,因为他没有定制,所以不可能被利用,所以在输出的时候了,回事乱码,恩,再就是同样,这个行号和列好也是同样的到这里, 

所以当我以后遇到这个类的错误的时候了,额, ,我必须要好好的想想,可能是,定义错了,也可能是,定义出现了。问题,

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值