首页 > 编程语言 >c语言趣味编程(8)冒泡排序

c语言趣味编程(8)冒泡排序

时间:2023-04-26 19:00:49浏览次数:39  
标签:int 编程 cin 冒泡排序 升序 ++ while 数组 趣味

一、问题描述

对n个整数进行升序排列(数据由键盘键入)

二、设计思路

(1)读取从键盘键入的n个数据,存入数组a中;

(2)用for循环对数组a中的数据进行遍历,并用if语句来判断大小,按从小到大存入;

(3)遍历输出数组中已经完成升序排列的数组元素;

三、程序流程图

 

四、伪代码

五、代码

 1 #include <iostream>
 2 using namespace std;
 3 int main()
 4 {
 5     int a[1000];
 6     int i = 0;
 7     while (cin >> a[i])
 8     {
 9         i++;
10         if (cin.get() == '\n') break;  //用来结束循环
11     }
12     for (int j = 0; j < i-1; j++)
13     {
14         for (int m = j + 1; m < i; m++)
15         {
16             if (a[j] >= a[m])   //完成数据的交换
17             {
18                 int temp = a[j];
19                 a[j] = a[m];
20                 a[m] = temp;
21             }
22         }
23     }
24     int count = 0;
25     for (int k = 0; k < i; k++)
26     {
27         cout << a[k]<<" ";
28         count++;   //来控制已输出数据的个数,为了美观
29         if (count % 5 == 0)
30         {
31             cout << endl;
32         }
33     }
34     return 0;
35 }

 

六、总结

(1)利用while循环输入不确定个数的元素时可以在while后面条件中用输入流对象,然后在下面循环体中用if判断,if(cin.get()==‘\n') break;来结束循环;

标签:int,编程,cin,冒泡排序,升序,++,while,数组,趣味
From: https://www.cnblogs.com/lian369/p/17357012.html

相关文章

  • PVD-CH32可编程电压控制器PVD中断的使用方法
    可编程电压监视器PVD,主要被用于监控系统主电源的变化,与电源控制寄存器PWR_CTLR的PLS[2:0]所设置的门槛电压相比较,配合外部中断寄存器(EXTI)设置,可产生相关中断,以便及时通知系统进行数据保存等掉电前操作。配置方法如下:先使能PWR时钟,然后设置电压监视阈值,随后使能PVDE开......
  • 编程打卡:来玩玩Ruby语言吧2.1!
    编程打卡:来玩玩Ruby语言吧2.1!我们前面实现了一个有趣的树类Tree,但它不具有简洁的用户接口,来设置一棵新树,为它写一个初始化方法,接受散列表和数组嵌套的结构。写好之后,你可以这样设置新树:{'grandpa'=>{'dad'=>{'child1'=>{},'child2'=>{}},'uncle'=>{'child3�......
  • C#初级编程
    1.作为行为组件的脚本usingUnityEngine;usingSystem.Collections;publicclassExampleBehaviourScript:MonoBehaviour{voidUpdate(){if(Input.GetKeyDown(KeyCode.R)){GetComponent<Renderer>().material.color=Color.......
  • 实验3 控制语句与组合数据类型应用编程
    task1.py程序代码:1importrandom23print('用列表存储随机整数:')4lst=[random.randint(0,100)foriinrange(5)]5print(lst)67print('\n用集合·存储随机整数:')8s1={random.randint(0,100)foriinrange(5)}9print(s1)1011print(�......
  • Python的socket编程
    目前处在学习python爬虫的阶段,昨天看到了python的socket模块,分别实现TCP、UDP时间戳回显。1、tcp通信server和client代码#tcpServer.py#!/usr/bin/python#-*-coding:utf-8-*-fromsocketimport*fromtimeimportctimeHOST=''PORT=21156BUFSIZE=1024ADD......
  • Java8 教程_编程入门自学教程_菜鸟教程-免费教程分享
    教程简介Java8(又称为jdk1.8)是Java语言开发的一个主要版本。Java8是oracle公司于2014年3月发布,可以看成是自Java5以来最具革命性的版本。Java8为Java语言、编译器、类库、开发工具与JVM带来了大量新特性。Java8入门教程-从简单的步骤了解Java8,从基本到高级概......
  • 实验3 控制语句与组合数据类型应用编程
    任务一importrandomprint('用列表存储随机整数:')lst=[random.randint(0,100)foriinrange(5)]print(lst)print('\n用集合存储随机整数:')s1={random.randint(0,100)foriinrange(5)}print(s1)print('\n用集合存储随机整数:')s2=set()whilele......
  • 编程一小时2023.4.25
    1.#include<bits/stdc++.h>usingnamespacestd;classnumber{intfz,fm;friendnumberoperator+(number&n1,number&n2);public:number(inta=0,intb=1){fz=a;fm=b;}friendintgcd(inta,intb);friendintmin_gb(number&n1......
  • 实验3 控制语句与组合数据类型应用编程
    实验任务11importrandom2print('用列表存储随机整数:')3lst=[random.randint(0,100)foriinrange(5)]4print(lst)5print('\n用集合存储随机整数:')6s1={random.randint(0,100)foriinrange(5)}7print(s1)8print('\n用集合存储随机整数:......
  • shell编程总结
    一,执行shell程序文件有三种方法(1)#shfile(2)#.file(3)#sourcefileshell常用的系统变量$#:保存程序命令行参数的数目$?:保存前一个命令的返回码$0:保存程序名$*:以("$1$2...")的形式保存所有输入的命令行参数$@:......