|
大家先看下这个程序!
//冒泡法,排列10个数字!
#include<iostream.h>
main(void)
{
int sz[10],xh,xh1,zh; //定义一系列变量
cout<<"请输入10个数字,数字中间用空格分隔,或者使用回车分隔。\n";
for(xh=0;xh<10;xh++)
cin>>sz[xh]; //输入数子
for(xh=0;xh<10;xh++)
for(xh1=0;xh1<10;xh1++)
{
if(sz[xh1]>sz[xh1+1])
{
zh=sz[xh1];
sz[xh1]=sz[xh1+1];
sz[xh1+1]=zh;
}
} //以上为比较和换位置
cout<<"比较以后的数,从小到大排列\n";
for(xh=0;xh<10;xh++)
cout<<sz[xh]<<"\t"; //输出所得数
}
在看下,下面的程序
#include<iostream.h>
int sz[10],xh,xh1,zh; //定义一系列全局变量
bj(void)
{
for(xh=0;xh<10;xh++)
for(xh1=0;xh1<10;xh1++)
{
if(sz[xh1]>sz[xh1+1])
{
zh=sz[xh1];
sz[xh1]=sz[xh1+1];
sz[xh1+1]=zh;
}
} //以上为比较和换位置
}
main(void)
{
cout<<"请输入10个数字,数字中间用空格分隔,或者使用回车分隔。\n";
for(xh=0;xh<10;xh++)
cin>>sz[xh]; //输入数子
bj();
cout<<"比较以后的数,从小到大排列\n";
for(xh=0;xh<10;xh++)
cout<<sz[xh]<<"\t"; //输出所得数
}
为什么把这个比较的代码弄进一个函数,然后调用函数比较以后,输出的数并不是像上面一个程序输出的结果?请各位给看看,谢谢了! |
|