自定义输入函数input:输入10个无序的整数到数组中
时间: 2023-11-26 21:06:42 浏览: 99
好的,这里是一个示例代码:
```python
arr = [] # 定义一个空数组
# 循环10次,每次输入一个整数并添加到数组中
for i in range(10):
num = int(input("请输入第{}个整数:".format(i+1)))
arr.append(num)
print("输入完成,数组为:", arr)
```
运行示例:
```
请输入第1个整数:3
请输入第2个整数:8
请输入第3个整数:1
请输入第4个整数:6
请输入第5个整数:9
请输入第6个整数:4
请输入第7个整数:7
请输入第8个整数:2
请输入第9个整数:5
请输入第10个整数:0
输入完成,数组为: [3, 8, 1, 6, 9, 4, 7, 2, 5, 0]
```
相关问题
定义一个整型数组,编写一个程序,主函数调用下面几个自定义函数来完成。 (1)自定义输入函数input:输入10个无序的整数到数组中; (2)自定义排序函数sort:用冒泡法将数组从大到小排序; (3)自定义函数find:要求输入一个整数,在数组中查找找出该数。若存在,在主函数中输出其所 处的位置,否则输出不存在该数。 (4)自定义输出函数output:输出最终的数组。
以下是题目的代码实现:
```c
#include <stdio.h>
void input(int arr[], int n);
void sort(int arr[], int n);
int find(int arr[], int n, int x);
void output(int arr[], int n);
int main()
{
int arr[10], x;
// 输入10个数
input(arr, 10);
// 排序
sort(arr, 10);
// 查找
printf("请输入要查找的数:");
scanf("%d", &x);
int pos = find(arr, 10, x);
if (pos == -1)
printf("不存在该数\n");
else
printf("该数在数组中的位置为:%d\n", pos);
// 输出
output(arr, 10);
return 0;
}
// 自定义输入函数
void input(int arr[], int n)
{
printf("请输入%d个数:\n", n);
for (int i = 0; i < n; i++)
{
scanf("%d", &arr[i]);
}
}
// 自定义排序函数
void sort(int arr[], int n)
{
for (int i = 0; i < n - 1; i++)
{
for (int j = 0; j < n - i - 1; j++)
{
if (arr[j] < arr[j + 1])
{
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
// 自定义查找函数
int find(int arr[], int n, int x)
{
for (int i = 0; i < n; i++)
{
if (arr[i] == x)
return i;
}
return -1;
}
// 自定义输出函数
void output(int arr[], int n)
{
printf("排序后的数组为:\n");
for (int i = 0; i < n; i++)
{
printf("%d ", arr[i]);
}
printf("\n");
}
```
该程序通过调用自定义的输入、排序、查找和输出函数,实现了对一个整型数组的输入、排序、查找和输出。其中排序函数使用了冒泡排序的方法,查找函数返回找到的数在数组中的位置,如果没有找到则返回-1。
用C语言编写一个程序,由主函数和如下函数构成。 ⑴设计函数:input(),输入n个无序的整数存储在一个数组中; ⑵设计函数:sort(),用起泡法对数组中的n各数据从大到小排序; ⑶设计函数:search(),求m到n之间的所有素数。
好的,以下是这个程序的代码:
```c
#include <stdio.h>
void input(int arr[], int n);
void sort(int arr[], int n);
void search(int m, int n);
int main() {
int n, m;
printf("请输入数组大小n:");
scanf("%d", &n);
int arr[n];
input(arr, n);
sort(arr, n);
printf("请输入区间[m, n],求该区间内的所有素数:\n");
scanf("%d%d", &m, &n);
search(m, n);
return 0;
}
void input(int arr[], int n) {
printf("请输入%d个整数:\n", n);
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
}
void sort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] < arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
printf("从大到小排序后的数组为:\n");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}
void search(int m, int n) {
for (int i = m; i <= n; i++) {
int flag = 1;
for (int j = 2; j < i; j++) {
if (i % j == 0) {
flag = 0;
break;
}
}
if (flag == 1) {
printf("%d ", i);
}
}
}
```
这个程序实现了如下功能:
1. 通过 `input()` 函数输入 n 个无序的整数存储在一个数组中;
2. 通过 `sort()` 函数,用起泡法对数组中的 n 个数据从大到小排序;
3. 通过 `search()` 函数,求 m 到 n 之间的所有素数。
在主函数中,先输入数组大小 n,然后调用 `input()` 函数输入 n 个整数,并调用 `sort()` 函数将数组从大到小排序。接着,输入区间 [m, n],并调用 `search()` 函数求该区间内的所有素数。最后,程序结束。