(1)定义一个整型指针变量p,使它指向一个5个元素的一维数组.(2)使用指针移动的方式,输入5个整型数组元素.
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/15 10:11:26
(1)定义一个整型指针变量p,使它指向一个5个元素的一维数组.(2)使用指针移动的方式,输入5个整型数组元素.
(3)定义一个整型指针变量q,使用malloc函数动态分配5个整型数的地址空间.
(4)使用数组下标的方式输入5个整型元素.
(5)使用指针p和q分别访问两组数据,如果第一组数据对应位置的值大于第二组,则交换对应位置的值.
(6)分别输出交换后的两组数.
(7)按十六进制方式输出p、a和q的地址.
(3)定义一个整型指针变量q,使用malloc函数动态分配5个整型数的地址空间.
(4)使用数组下标的方式输入5个整型元素.
(5)使用指针p和q分别访问两组数据,如果第一组数据对应位置的值大于第二组,则交换对应位置的值.
(6)分别输出交换后的两组数.
(7)按十六进制方式输出p、a和q的地址.
你好,完成以上功能的代码如下根据你要求的malloc我觉得应该是用C语言来做吧!如果我理解错了,请指正!#include<stdio.h>#include<stdlib.h>int main(){ int a[5]; int *p=a; //完成(1) int i; printf("Please input:"); for(i=0;i<5;i++) scanf("%d",p+i); //完成(2) int *q=(int*)malloc(sizeof(int)*5); //动态分配内存空间 //完成(3) printf("Please input:"); for(i=0;i<5;i++) scanf("%d",q+i); //完成(4) for(i=0;i<5;i++) //完成(5)if(p[i]>q[i]){ int t=p[i]; p[i]=q[i]; q[i]=t;}for(i=0;i<5;i++) //完成(6) printf("%d",p[i]); putchar('\n');for(i=0;i<5;i++) printf("%d",q[i]); putchar('\n'); printf("p=%x\n",p); //完成(6) printf("a=%x\n",a); printf("q=%x\n",q); free(q); q=NULL;//释放动态分配的内存return 0;}执行结果:
(1)定义一个整型指针变量p,使它指向一个5个元素的一维数组.(2)使用指针移动的方式,输入5个整型数组元素.
(*q)[3]和*p[3]的区别!q是指向一个包含4个整型元素的一维数组的指针变量.p是由p[0] 、p[1]、 p[2
定义一个指针变量,使它指向数组的第一个元素?怎么实现?
若有定义:int (*p)[4],则p是一个指向含有四个整型元素的一维数组 的指针.这句话是正确的吗?
已知一个整型数组a[10],要求定义2个指向整型变量的指针变量max,min,使得它们分别指向数组的最大数和最小数.
定义一个整型数组,int a[]=(1,2,3,4,5,6,7,8,9,10)利用指针输出全部数组元素
一个函数指针数组p[],数组p共有4个元素,其元素指向返回double型值的函数.其定义形式正确的为
一个函数指针数组p[],数组p共有4个元素,其元素指向返回double型值的函数.其定义形式正确为
若有定义int(*p)[3]; 则定义了一个名为p的指针变量 它可以指向每行有三个整数元素的二维数组
(28)若要定义一个具有5个元素的整型数组,以下错误的定义语句是( )
定义一个长度为20的整型数组,并初始示数组中的所有元素,每行5个元素,并求最大值及其下标,最小值及其下标,平均值
请问:两个指针变量可以相减,如两个指针变量指向同一个数组的元素,