0
已解决
邓涵睿
中级天翼
中级天翼
#include<iostream>
using namespace std;
int a[10010],cnt;
int main() {
int n,j,key;
cin>>n;
while(1)
{
cin>>a[i];
if(a[i]==0)
break;
i++;
cnt++;
}
for(int i=2;i<=n;i++)
{
key=a[i];
j=i-1;
while(j>=1&&key<a[j]){
a[j+1]=a[j];
j--;
}
a[j+1]=key;
}
for(int i=1;i<=n;i++){
cout<<a[i]<<" ";
}
return 0;
}
@李显晨,帮我看看
邓涵睿在2020-11-18 16:52:10追加了内容
#include<iostream>
using namespace std;
int a[10010];
int main() {
int cnt=0;
a[0]=1;
while(a[cnt]!=0){
if(a[cnt]!=0){
cnt++;
cin>>a[cnt];
}
}
for(int i=2;i<=cnt-1;i++){
int key=a[i];
int j=i-1;
for(j>=1&&key>a[j]){
a[j+1]=a[j];
j--;
}
a[j+1]=key;
}
for(int i=1;i<=cnt-1;i++) cout<<a[i]<<" ";
return 0;
}
@李显晨,还不行
0
已采纳
李显晨
中级启示者
中级启示者
定义 计数器=0;
a[0]=1;
循环(a[计数器]!=0){
如果(a[计数器]!=0){
计数器++;
输入a[计数器];
}
}
循环(int i=2;i<=计数器-1;i++){
定义 key=a[i];
定义 j=i-1;
循环(j>=1&&key>a[j]){
a[j+1]=a[j];
j--;
}
a[j+1]=key;
}
for(int i=1;i<=cnt-1;i++) cout<<a[i]<<" ";//输出
定义一个a数组即可AC,数组大小:1000001
0
0
李显晨
中级启示者
中级启示者
#include<iostream>
#include<cstdio>
#include<string>
#include<algorithm>
#include<cmath>
using namespace std;
int a[1000001];
int main(){
int cnt=0;
a[0]=1;
while(a[cnt]!=0){
if(a[cnt]!=0){
cnt++;
cin>>a[cnt];
}
}
for(int i=2;i<=cnt-1;i++){
int key=a[i];
int j=i-1;
while(j>=1&&key>a[j]){
a[j+1]=a[j];
j--;
}
a[j+1]=key;
}
for(int i=1;i<=cnt-1;i++) cout<<a[i]<<" ";
return 0;
}
@邓涵睿