请教 C语言 指针数组代码:产生int型的随机数数组,定义一个函数,将此数组中的元素按相反顺序存放。
#includeint d[1024];int main(){ int N; scanf("%d",&N); for (int i=1;iMax) { Max=*itor; u=itor; } } int t=*itor; *itor=*u; *u=t; itor=d; int Min=1000000; for (int i=1;i<=N;i++) { itor++; if (*itor<Min) { Min=*itor; u=itor; } } t=*itor; *itor=*u; *u=t; itor=d; for (int i=1;i<=N;i++) { itor++; printf("%d ",*itor); } return 0; [您的采纳是我们前进的不竭动力]
你先生成一个顺序的数组,然后随机输出数组的某个元素,不是多此一举么,直接输出随机数不就可以啦
#include <stdio.h>
#include<stdlib.h>
void make_rand_number(int *num,int N)
{
int i = 0;
for(i = 0;i< N;i++)
{
num[i] = rand();
}
}
void swap(int *arr,int n)
{
int *p,*q;
int i,tmp;
p = &arr[0];
q = &arr[n - 1];
for(i = 0;i<n/2;i++)
{
tmp = *p;
*p = *q;
*q = tmp;
p++;
q--;
}
}
void main(void)
{
int b[100],n;
int i;
while(1)
{
printf("请输入产生数的个数(小于100)
");
scanf("%d",&n);
if(n < 100)
{
break;
}
}
make_rand_number(b,n);
printf("交换前顺序
");
for(i = 0;i< n;i++)
{
printf("%d,",b[i]);
}
swap(b,n);
printf("
交换后顺序
");
for(i = 0;i< n;i++)
{
printf("%d,",b[i]);
}
printf("
");
}
void fun1(int *a,int n){
int i=0;
for(;i<n;i++)a[i]=rand();
}
void fun2(int *a,int n){
int i=0,m=n/2;
int t;
for(;i<m;i++){
t=a[i];
a[i]=a[n-1-i];
a[n-1-i]=t;
}
}
#include <iostream>
using namespace std;
int array[10] = {4, 5, 8, 0, 12, 7, 67, 30, 24, 3};
int main()
{
int *p = array, *q = (array + 9);
for (int i = 0; i < 5; i++)
{
swap(*p++, *q--);
}
for (int j = 0; j < 10; j++)
{
cout << array[j] << ' ';
}
cout << endl;
}
C语言:随机产生一组十个整数,再从键盘输入一个值,利用指针方式求出数...
include <stdio.h> include <stdlib.h> include <time.h> int main(){ int i,x,n=0,a[10],*p;srand(time(0));for(i=0; i<10; i++){ a[i]=rand()%100;printf("%d ",a[i]);} printf("\\n");scanf("%d",&x);for(p=a; p<a+10; p++)if(*p>x)n++;printf("数...
C语言 用指针生成一个三维数组,用main调用另一个函数,该指针作为参数...
示例代码:include <stdio.h>#include <stdlib.h>int main(){ \/\/有效部分int ***p = (int***)malloc(sizeof(int**)*3);for (int i = 0; i < 3; ++i){p[i] = (int**)malloc(sizeof(int*) * 4);}for (int i = 0; i < 3; ++i){for (int j = 0; j < 4;...
C语言用指针调换数组元素
i;检查它是否小于当前的最小值min,如果是,则更新min和min_i。找到数组中的最大值和最小值及其索引后,我们调用swap函数来交换这两个值。最后,我们使用for循环遍历数组a,并通过printf函数将数组中的每个元素输出到标准输出。通过这种方法,我们可以轻松地使用指针在C语言中交换数组中的元素。
C语言编程,题目1:定义一个一维数组,用指针引用的方法对该数组各元素赋值...
题目1 void main(){ int i;char a[3];a=1;(a+1)=2;(a+2)=3;for(i=0;i<3;i++){ printf("%d.\\n",a[i]);} return;} 题目二 include<stdio.h> void main(){ int i,j;int A[3][4]= { {1,2,3,4},{5,6,7,8},{9,10,11,12} };int (*p)[4]=A;for(i...
如何定义一个指向函数的指针数组
在C语言中,定义指向函数的指针数组可以通过使用typedef来简化代码,提高可读性。首先,我们可以定义一个函数指针的类型,例如:typedef void (*pFUN)();。然后,利用这个类型定义一个数组:pFUN ptr[5];,这里的[]中的数字表示数组元素的数量,可以根据实际情况调整。这样,ptr就变成了一个指向函数指针...
C语言关于指针地址加1 那么他是怎么移动的呢?
主要是看你定义指针的类型,比如你定义int *p=NULL; 那么int占4个字节。指向int的指针+1,该指针所指的内存地址要+4;如果你是定义 char *p=NULL; 那么char占1个字节。指向char的指针+1,该指针所指的内存地址只要+1
c语言的指针问题:将10个数字存入数组,然后使用指针变量指向数组,并输 ...
for(p=a;p<(a+10);p++);上述代码多了一个分号“;”
用C语言指针写一个“一维数组中最大的数并输出它的下标”。
include<stdio.h> main(){ int a[10],i,max,maxi;printf("input numbers:\\n");for(i=0;i<10;i++)scanf("%d",&a[i]);max=a[0];for(i=0;i<10;i++)if(a[i]>max){max=a[i];maxi=i;} printf("the max number:a[%d]=%d\\n",maxi,max);} ...
C语言:从五个数中选出最大和最小的数用指针实现?
下面给出一个使用C语言指针和循环来实现从五个数中选出最大和最小的数的示例代码:```c include <stdio.h> void find_min_max(int* nums, int len, int* min, int* max);int main() { int nums[] = {5, 8, 3, 9, 1};int len = sizeof(nums) \/ sizeof(nums[0]);int min...
c语言指针引用数组元素,从p=a开始解释下此程序
1. p=a; \/\/使int*指针p指向数组a的首元素,即a[0]的地址—&a[0]。2. 第一个for循环语句,就是通过指针p来对数组a的各个元素赋初值,*p的意思就是获取指针p所指向的内存单元的值,初始就是对a[0]赋初值i,*p++=i,等价于:p=i; \/\/对p指向的当前数组元素赋值,等价于a[i]=i...