注册 登录
编程论坛 C++教室

变量定义规定是不是一定要相同的要在一个(变量类型)后面,分出两个相同(变量类型)就不行了?

lxh553503571 发布于 2013-11-17 00:30, 393 次点击
请给我帮忙看一下程序1,和程序2,就只有定义变量时候不一样及结果就完全不同了 ,定义变量是不是一定要相同的类型在一起定义,分开两行定义就不行了啊
程序1:
main()
{
int i,j,k,a[4]={3,5,7,19};

 for(i=0;i<5;i++)
     for(j=i+1;j<5;j++)
         if(a[i]>a[j])
         {
         k=a[j];
      a[j]=a[i];
      a[i]=k;
      printf("%d ",a[i]);
     }
 printf("\n");
}
输出结果 3 5 7 19

程序2:
main()
{
int a[4]={3,5,7,19};
int i,j,k;
 for(i=0;i<5;i++)
     for(j=i+1;j<5;j++)
         if(a[i]>a[j])
         {
         k=a[j];
      a[j]=a[i];
      a[i]=k;
      printf("%d ",a[i]);
     }
 printf("\n");
}
输出结果          (什么都没有)
3 回复
#2
peach54602013-11-17 07:30
没见过...
#3
p832lun2013-11-17 14:39
c语言,要求所有用到的变量一定要在使用前,统一在函数开始进行声明。而c++可以在使用的时候在声明。
#4
p832lun2013-11-17 14:49
刚才看错了。
问题出在if判断语句的条件,
你第一个程序也“跑不起来”
输出四个换行符 “\n”。
把> 换成小于号,就能看到你要的字符了。
你这属于逻辑错误~~~~~~~编译器看不到的
1