C语言,用指针输入12个整数,每行按四个输出
时间: 2024-05-11 20:17:20 浏览: 52
好的,以下是C语言代码实现:
```c
#include <stdio.h>
int main() {
int arr[12];
int *p = arr; // 定义指向整型数组的指针
printf("请输入12个整数:\n");
for (int i = 0; i < 12; i++) {
scanf("%d", p); // 输入整数
p++; // 指针后移
}
p = arr; // 指针重新指向数组首地址
printf("输出结果:\n");
for (int i = 0; i < 12; i++) {
printf("%d\t", *p); // 输出整数
if ((i + 1) % 4 == 0) { // 判断是否换行
printf("\n");
}
p++; // 指针后移
}
return 0;
}
```
输入12个整数后,程序会将它们存入一个整型数组中。然后,利用指针遍历数组,每输出四个整数就进行换行。
相关问题
用C语言编写,使用指针编写一个程序,使得输入四个整数,从小到大排列输出
好的,让我来回答您的问题。
以下是使用指针和C语言编写的程序,可以输入四个整数并按从小到大的顺序输出它们:
```c
#include <stdio.h>
void sort(int *a, int *b, int *c, int *d);
int main() {
int a, b, c, d;
printf("请输入四个整数:\n");
scanf("%d %d %d %d", &a, &b, &c, &d);
sort(&a, &b, &c, &d);
printf("四个整数从小到大排列的结果为:\n");
printf("%d %d %d %d", a, b, c, d);
return 0;
}
void sort(int *a, int *b, int *c, int *d) {
int temp;
if (*a > *b) {
temp = *a;
*a = *b;
*b = temp;
}
if (*a > *c) {
temp = *a;
*a = *c;
*c = temp;
}
if (*a > *d) {
temp = *a;
*a = *d;
*d = temp;
}
if (*b > *c) {
temp = *b;
*b = *c;
*c = temp;
}
if (*b > *d) {
temp = *b;
*b = *d;
*d = temp;
}
if (*c > *d) {
temp = *c;
*c = *d;
*d = temp;
}
}
```
希望这个程序可以帮到您!
用C语言编写程序:有四个整数,由键盘输入,输出最大值,要求使用指针变量做函数参数实现
好的,下面是用 C 语言编写的程序,实现了从键盘输入四个整数并输出最大值,使用指针变量做函数参数实现:
```c
#include <stdio.h>
void find_max(int *p, int n, int *max);
int main() {
int a, b, c, d;
int max;
printf("请输入四个整数:\n");
scanf("%d%d%d%d", &a, &b, &c, &d);
find_max(&a, 4, &max);
printf("最大值为:%d\n", max);
return 0;
}
void find_max(int *p, int n, int *max) {
*max = *p;
for (int i = 1; i < n; i++) {
if (*(p + i) > *max) {
*max = *(p + i);
}
}
}
```
程序中定义了一个 `find_max` 函数,它的参数包括一个整型指针 `p`,表示要查找最大值的整数数组的首地址;一个整型变量 `n`,表示整数数组的元素个数;一个整型指针 `max`,表示要存储最大值的地址。在函数内部,首先将最大值初始化为数组的第一个元素,然后遍历整个数组,逐个比较每个元素与当前最大值,如果找到更大的元素,则更新最大值。最终,最大值会被存储在 `max` 指向的地址中,通过函数参数传递回主函数,然后输出即可。
阅读全文