定义三个子函数,分别完成一维数组的输入输出和排序,并用主函数调用三函数?

如题所述

以下是一个示例代码,其中包含三个子函数和一个主函数,可以完成一维数组的输入输出和排序:
# 子函数1:输入一维数组
def input_array():
n = int(input("请输入数组长度:"))
arr = []
for i in range(n):
x = int(input("请输入第%d个元素:" % (i+1)))
arr.append(x)
return arr
# 子函数2:输出一维数组
def output_array(arr):
print("数组元素为:", end="")
for x in arr:
print(x, end=" ")
print()
# 子函数3:对一维数组进行排序
def sort_array(arr):
n = len(arr)
for i in range(n-1):
for j in range(i+1, n):
if arr[i] > arr[j]:
arr[i], arr[j] = arr[j], arr[i]
# 主函数:调用三个子函数完成一维数组的输入输出和排序
def main():
arr = input_array()
output_array(arr)
sort_array(arr)
output_array(arr)
if __name__ == '__main__':
main()
在主函数中,首先调用input_array函数输入一维数组,然后调用output_array函数输出数组元素,最后调用sort_array函数对数组进行排序,再次调用output_array函数输出排序后的数组元素。运行该程序,可以输入数组长度和元素,然后输出数组元素和排序后的数组元素。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-05-30
#include #define N 10 /*函数前置声明*/ int sortArr(int *p,int n); int printArr(int * p, int n); /*冒泡排序*/ int sortArr(int *p,int n) { int i, j, t; for(i = 0; i < n; i++) { for(j = 0; j p[j+1]) { t = p[j]; p[j] = p[j+1]; p[j+1] = t; } } } return 0; } /*打印数组*/ int printArr(int * p, int n) { int i; for(i=0; i
相似回答