点赞(0)
 

0.0分

2 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 6 条评论

詹鸿培 3年前 回复TA
@踏上星辰 你说的有问题
踏上星辰 4年前 回复TA
我发现没必要分两种情况丫
踏上星辰 4年前 回复TA
#include <stdio.h>
int main(void)
{
    int y[10];
    int a;         //a为插入的数应该插入的位置
    for(int i=0;i<=9;i++)
    {
        scanf("%d",&y[i]);
    }
    for(int i=0;i<=8;i++)
    {
        if(y[9]<y[i])
        {
            int t=i;        //t是要插入的位置
            int b=9;            //顺序依次增加
            int c=y[9];        //用来方便代替插入
            for(b;b>t;b--)
            {
                y[b]=y[b-1];
                if((b-1)==t)  y[b-1]=c;
            }
            break;
        }
    }
        for(int i=0;i<=9;i++)
        {
             printf("%d\n",y[i]);
        }     
 return 0;}
踏上星辰 4年前 回复TA
比上面的那个答案清楚太多了,简介明了。赞一个QAQ
彭泽横琴 4年前 回复TA
@月缺 因为这里比较的是两个数,最大比较到下标7-8,i+1最大为8,故i<8,原来的代码写的太急,我完善了一下,你再看看
月缺 4年前 回复TA
为什么你第二个for循环里i<8啊