为一个冒泡排序程序设计测试用例。并测试之(C语言编程)

为一个冒泡排序程序设计测试用例。并测试之(C语言编程),第1张

以下是一个冒泡排序程序的示例代码,它可以对输入的任意数量整数进行排序:

```c

#include <stdio.h>

void bubble_sort(int list[], int n) {

int i, j, temp

for(i = 0i <n-1i++) {

for(j = 0j <n-i-1j++) {

if(list[j] >list[j+1]) {

temp = list[j]

list[j] = list[j+1]

list[j+1] = temp

}

}

}

}

int main() {

int n, i

printf("请输入要排序的整数个数:")

scanf("%d", &n)

int list[n]

printf("请输入%d个整数:", n)

for(i = 0i <ni++) {

scanf("%d", &list[i])

}

bubble_sort(list, n)

printf("排序后的结果是:")

for(i = 0i <ni++) {

printf("%d ", list[i])

}

return 0

}

```

接下来是测试用例,包括了多种情况,以验证算法在各种情况下的正常工作:

```c

#include <stdio.h>

int main() {

// 测试用例1:对3个整数进行排序

int list1[] = {2, 1, 3}

bubble_sort(list1, 3)

printf("测试用例1:[2, 1, 3] ->[1, 2, 3]

")

for(int i = 0i <3i++) {

printf("%d ", list1[i])

}

printf("

")

// 测试用例2:对10个整数进行排序

int list2[] = {56, 89, 17, 21, 2, 76, 12, 9, 47, 62}

bubble_sort(list2, 10)

printf("测试用例2:[56, 89, 17, 21, 2, 76, 12, 9, 47, 62] ->[2, 9, 12, 17, 21, 47, 56, 62, 76, 89]

")

for(int i = 0i <10i++) {

printf("%d ", list2[i])

}

printf("

")

// 测试用例3:对1个整数进行排序

int list3[] = {5}

bubble_sort(list3, 1)

printf("测试用例3:[5] ->[5]

")

for(int i = 0i <1i++) {

printf("%d ", list3[i])

}

printf("

")

return 0

}

```

测试结果显示,算法可以正常地对数组进行排序。

排序数组可以使用冒泡算法:如果前一个数据比后一个大,则交换。

{

int i,j,t,a[6]

printf("Please input 6 integers:\n")

for(i=0i<6i++)

scanf("%d",&a[i])

for(i=0i<5i++) /* 冒泡法排序 */

for(j=0j<6-i-1j++)

if(a[j]>a[j+1])

{t=a[j]/* 交换a[i]和a[j] */

a[j]=a[j+1]

a[j+1]=t

}

优点:

简洁紧凑、灵活方便:C语言一共只有32个关键字,9种控制语句,程序书写形式自由,区分大小写。把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以像汇编语言一样对位、字节和地址进行 *** 作,而这三者是计算机最基本的工作单元。

以上内容参考:百度百科-c语言程序设计

1、打开visual C++ 6.0-文件-新建-文件-C++ Source File。

2、定义数组和变量:#include<stdio.h>main(){char a[100], b[100], c[200],  *pint i = 0, j = 0, k = 0。

3、输入字符串: printf("please input string a:\n")scanf("%s", a)                                 /*输入字符串1放入a数组中*/。

4、输入字符串:printf("please input string b:\n")scanf("%s", b)                                 /*输入字符串2放入b数组中*/。

5、给字符串进行排序。

6、链接字符串并输出:if (a[i] == '\0')                                    /*判断a中字符是否全都复制到c中*/

p = b + j                                  /*p指向数组b中未复制到c的位置*/。

7、输出最后的结果。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11467010.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存