C语言编程实践:数组操作与冒泡排序

版权申诉
0 下载量 146 浏览量 更新于2024-06-27 收藏 45KB DOCX 举报
"这篇文档包含了两个C语言编程练习题目,分别是输出整数各位数字和冒泡法排序。第一个练习涉及到整数的位处理,通过取模和除法操作分离每位数字,并存储到数组中,然后逆序输出。第二个练习介绍了冒泡排序的基本原理和实现,要求在K遍扫描后输出中间结果。" 详细知识点: 1. C语言编程基础: - 数组:在C语言中,数组是一种存储固定数量同类型元素的数据结构。在这个例子中,数组`a`用来存储整数的各位数字,数组大小为20,确保足够存放长整型数字的每一位。 - 变量与数据类型:`long long n`用于存储输入的整数,保证能处理长整型数值。 - 循环控制:使用`while`循环来分离整数的每一位,直到number变为0。 - 输入输出:使用`scanf`函数读取用户输入的长整型数字,`printf`函数进行格式化输出。 2. 整数位处理: - 取模运算 `%`:`n%10`返回n的个位数。 - 除法运算 `/`:`n/n`丢掉n的个位数,向左移动一位。 3. 数组操作: - 数组索引:`a[cnt++]`中的`cnt`用于记录已存储的数字个数,`a[cnt]`表示当前存储位置。 - 数组逆序输出:由于存储时是从低位到高位,所以输出时需从高位到低位,即倒序遍历数组。 4. 冒泡排序算法: - 原理:冒泡排序通过不断比较相邻元素并交换位置,使得最大(或最小)的元素逐渐“浮”到序列的一端。 - 实现:使用两层嵌套`for`循环,外层控制遍历次数,内层负责相邻元素的比较和交换。 - 特殊情况处理:当K遍扫描结束后,输出当前数列状态,而不是完全排序后的结果。 5. 输入输出格式控制: - 格式输入 `scanf`:按照指定的格式读取用户输入,如 `%lld` 用于读取长整型数值。 - 格式输出 `printf`:使用 `%d` 输出整数,`\n` 表示换行。 6. 条件判断: - 在处理整数的各位数字时,用`if(cnt==0)`判断是否输入为0,输出0。 - 在冒泡排序中,遍历次数根据K值确定,避免超过数组长度。 这两个编程练习旨在巩固C语言的基础知识,包括数组操作、整数位处理、循环控制、条件判断以及简单的排序算法理解。