.设计一个源程序,将一组整数{5,4,2,7,9}通过赋初值方法保存在a[5]中,定义指针变量p,使p指向a.通过指针变量p访问数组各元素,按倒序输出数组元素的值
时间: 2024-01-03 12:03:50 浏览: 138
好的,以下是符合题目要求的 C++ 源代码:
```cpp
#include <iostream>
using namespace std;
int main() {
int a[5] = {5, 4, 2, 7, 9};
int *p = a;
for (int i = 4; i >= 0; i--) {
cout << *(p + i) << " ";
}
return 0;
}
```
程序首先定义了一个整数数组 `a`,并使用赋初值的方法将 {5, 4, 2, 7, 9} 赋值给它。接着定义了一个指针变量 `p`,并将 `a` 数组的首地址赋值给它。最后通过指针变量 `p` 访问数组各元素,并按倒序输出数组元素的值。
在输出数组元素的时候,我们使用了指针的加法运算,即 `p + i` 表示 `p` 指向的地址加上 `i` 个整数大小的偏移量。然后通过 `*(p + i)` 取出该地址上存储的整数值。注意,由于数组下标是从 0 开始计算的,因此我们在循环中使用了 `i = 4; i >= 0; i--` 的方式来依次访问数组的后 5 个元素。
相关问题
设计一个源程序,将一组整数{5,4,2,7,9}通过赋初值方法保存在a[5]中,使用循环语句(for循环和while循环、,分别求出其中最大值max和最小值min,输出数组元素的最大值max和最小值min;
没问题,我可以回答。以下是源代码:
#include <iostream>
using namespace std;
int main() {
int a[5] = {5, 4, 2, 7, 9};
int max = a[0], min = a[0]; // 初始化max和min为a[0]
// 使用for循环求max和min
for(int i=0; i<5; i++) {
if(a[i] > max) {
max = a[i];
}
if(a[i] < min) {
min = a[i];
}
}
// 输出max和min
cout << "最大值为:" << max << endl;
cout << "最小值为:" << min << endl;
return 0;
}
希望能够帮到你!
c语言设计一个源程序,将一组整数{5,4,2,7,9}通过赋初值方法保存在a[5]中,使用循环语句(for循环和while循环、,分别求出其中最大值max和最小值min,输出数组元素的最大值max和最小值min;
好的,这是一个关于C语言的问题。可以使用以下代码来实现:
#include <stdio.h>
int main()
{
int a[5] = {5, 4, 2, 7, 9};
int i, max, min;
max = a[0];
min = a[0];
for (i = 1; i < 5; i++)
{
if (a[i] > max)
{
max = a[i];
}
if (a[i] < min)
{
min = a[i];
}
}
printf("数组元素的最大值是:%d\n", max);
printf("数组元素的最小值是:%d\n", min);
return 0;
}
这样就可以输出数组元素的最大值和最小值了。
阅读全文
相关推荐













