求解答这段程序设计是如何实现循环(初学者,求详解)for(i=0;i<4;i++)
for(j=0;j<i;j++){
if (num[j]>num[j+1])
{a=num[j];
num[j]=num[j+1];
num[j+1]=a;
}
}
for(i=0;i<4;i++)
cout<<num[i]<<" ";
cout<<endl;
}
求解答这段程序设计是如何实现循环(初学者,求详解)for(i=0;i<4;i++) for(j=
答案:1 悬赏:30 手机版
解决时间 2021-02-25 02:01
- 提问者网友:我没有何以琛的痴心不悔
- 2021-02-24 13:48
最佳答案
- 五星知识达人网友:猎心人
- 2021-02-24 14:24
冒泡排序第二个for循环作用 第一次结束后将最大的数放置最后 第二次结束后将第二大数放到倒数第二的位置 以此类推 相应的 循环的次数应该越来越少 因为大数逐渐排列好了
1. 用起泡法把数组中的数从大到小排列
方法一:
#include <iostream>
using namespace std;
int main()
{
int a[10];
int i,j;
cout<<"请输入各个数字:"<<' ';
for(i=0;i<10;i++)
cin>>a[i];
for(j=1;j<10;j++)//进行n-1次循环,n-i趟比较
for(i=0;i<10-j;i++)//每趟进行n-i-j次比较
{ if(a[i]>a[i+1])//相邻两数进行比较
{
int t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
for(i=0;i<10;i++)
cout<<a[i]<<' ';
cout<<endl;
return 0;
}
问题:注意i的条件
方法二
#include <iostream>
using namespace std;
int main()
{
int i,j,a[10]={54 ,7 ,8 ,93, 4 ,33 ,6 ,12 ,28, 0};
//定义数组a【】并初始化各值
for(j=1;j<10;j++)
for(i=0;i<=9-j;i++)
{
if(a[i]>a[i+1])
//对相邻两数进行比较,如果条件成立,交换两数的值,
{
int t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
for(i=0;i<10;i++)
cout<<a[i]<<' ';
cout<<endl;
return 0;
}
方法三
#include <iostream>
using namespace std;
int main()
{
int a[100];
int n,i,j;
cout<<"请输入要比较的数字个数:"<<' ';
cin>>n;
cout<<"请输入各个数字:"<<' ';
for(i=0;i<n;i++)
cin>>a[i];
for(j=1;j<n-1;j++)//进行n-1次循环,n-i趟比较
for(i=0;i<n-j;i++)//每趟进行n-i-j次比较
{
if(a[i]>a[i+1])//相邻两数进行比较
{
int t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
for(i=0;i<n;i++)
cout<<a[i]<<' ';
cout<<endl;
return 0;
}
1. 用起泡法把数组中的数从大到小排列
方法一:
#include <iostream>
using namespace std;
int main()
{
int a[10];
int i,j;
cout<<"请输入各个数字:"<<' ';
for(i=0;i<10;i++)
cin>>a[i];
for(j=1;j<10;j++)//进行n-1次循环,n-i趟比较
for(i=0;i<10-j;i++)//每趟进行n-i-j次比较
{ if(a[i]>a[i+1])//相邻两数进行比较
{
int t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
for(i=0;i<10;i++)
cout<<a[i]<<' ';
cout<<endl;
return 0;
}
问题:注意i的条件
方法二
#include <iostream>
using namespace std;
int main()
{
int i,j,a[10]={54 ,7 ,8 ,93, 4 ,33 ,6 ,12 ,28, 0};
//定义数组a【】并初始化各值
for(j=1;j<10;j++)
for(i=0;i<=9-j;i++)
{
if(a[i]>a[i+1])
//对相邻两数进行比较,如果条件成立,交换两数的值,
{
int t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
for(i=0;i<10;i++)
cout<<a[i]<<' ';
cout<<endl;
return 0;
}
方法三
#include <iostream>
using namespace std;
int main()
{
int a[100];
int n,i,j;
cout<<"请输入要比较的数字个数:"<<' ';
cin>>n;
cout<<"请输入各个数字:"<<' ';
for(i=0;i<n;i++)
cin>>a[i];
for(j=1;j<n-1;j++)//进行n-1次循环,n-i趟比较
for(i=0;i<n-j;i++)//每趟进行n-i-j次比较
{
if(a[i]>a[i+1])//相邻两数进行比较
{
int t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
for(i=0;i<n;i++)
cout<<a[i]<<' ';
cout<<endl;
return 0;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯