用c语言写 键盘输入4个整数存入数组a[4]
时间: 2023-12-14 13:38:16 浏览: 39
可以使用scanf函数来读取键盘输入的整数,并存入数组中。以下是一个示例代码:
```c
#include <stdio.h>
int main() {
int a[4];
int i;
printf("请输入4个整数:\n");
for (i = 0; i < 4; i++) {
scanf("%d", &a[i]);
}
printf("输入的4个整数为:");
for (i = 0; i < 4; i++) {
printf("%d ", a[i]);
}
return 0;
}
```
在这个示例代码中,我们首先定义了一个长度为4的整型数组a,以及一个循环变量i。然后使用printf函数输出提示信息,让用户输入4个整数。接着使用for循环和scanf函数读取键盘输入的整数,并存入数组a中。最后使用for循环和printf函数输出数组a中存储的4个整数。
相关问题
用c语言写 键盘输入4个整数存入数组a[]中,并且按由小到大的顺序输出;并输出原数组a[4]中最大元素的下标
下面是用C语言实现的代码:
```c
#include <stdio.h>
int main() {
int a[4], i, j, max_index;
printf("请输入4个整数:\n");
for (i = 0; i < 4; i++) {
scanf("%d", &a[i]);
}
// 冒泡排序
for (i = 0; i < 3; i++) {
for (j = 0; j < 3 - i; j++) {
if (a[j] > a[j + 1]) {
int temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
// 输出排序后的数组
printf("排序后的数组为:\n");
for (i = 0; i < 4; i++) {
printf("%d ", a[i]);
}
printf("\n");
// 找到最大元素的下标
max_index = 0;
for (i = 1; i < 4; i++) {
if (a[i] > a[max_index]) {
max_index = i;
}
}
printf("原数组中最大元素的下标为:%d\n", max_index);
return 0;
}
```
首先,我们声明了一个长度为4的整型数组`a`,用于存储输入的4个整数。然后,我们利用`for`循环和`scanf`函数依次读入这4个整数。
接下来,我们使用冒泡排序的方法将这4个数按由小到大的顺序排列。冒泡排序的基本思想是:每次比较相邻两个元素,如果前一个比后一个大,则交换这两个元素的位置。经过多次比较和交换,最终将最大的元素放在了数组的最后一个位置。我们需要进行3轮比较,每轮比较次数递减1,因为最大的元素已经排在了最后。
排序完成后,我们再次使用`for`循环输出排序后的数组。然后,我们遍历整个数组,找到最大元素的下标。这里我们从下标为1的位置开始遍历,因为我们已经知道下标为0的元素是最小的了。每次遍历到一个元素时,如果它比当前最大的元素还要大,则更新最大元素的下标。
最后,我们输出原数组中最大元素的下标,程序结束。
C语言 从键盘上输入10个整数存入数组a中,通过指针将数组元素的值逆序输出
好的,这是一个关于C语言的问题,我可以给你提供代码示例,帮助你解决这个问题。
```c
#include <stdio.h>
int main() {
int a[10];
int *p = a + 9; // p指向数组a的最后一个元素
// 从键盘输入10个整数存入数组a中
printf("请依次输入10个整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &a[i]);
}
// 通过指针将数组元素的值逆序输出
printf("逆序输出数组a的元素:\n");
for (int i = 0; i < 10; i++) {
printf("%d ", *p);
p--; // 指针向前移动
}
return 0;
}
```
这段代码的思路是,首先定义一个数组a和指针p,指针p指向数组a的最后一个元素。然后通过循环从键盘输入10个整数存入数组a中。最后再使用指针p逆序输出数组a的元素。
希望这个代码示例能帮助你解决问题。如果有其他问题,可以继续向我提问哦。