下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922
试卷 > 软考中级 > 软件设计师 > 2026下半年软考软件设计师第一期模考试卷(应用技术) > 本题我的试卷
试题五(15分,C 语言程序设计) 阅读下列说明和 C 代码,回答问题 1 至问题 3。 【说明】下面代码实现冒泡排序,对整型数组从小到大排序。 void BubbleSort(int arr[],int n){ int i,j,flag; for(i=0;i < n-1;i++){ flag=0; for(j=0;j < n-1-i;j++){ if(arr[j]>arr[j+1]){ int temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; flag=1; } } if(flag==0) break; } }

【问题1】(4分)代码中变量 flag 的作用是什么?

参考答案
flag 标记本轮循环是否发生元素交换。如果一轮遍历无交换,代表数组已经有序,直接退出外层循环,优化冒泡排序性能。 解析:属于冒泡排序的提前终止优化,避免有序数组继续无效循环。
答案解析
本题暂无答案解析,正确答案已在上方给出。