gitosc 用户名 forever
作业代码已经上传
计算机专业词典截图:
题目要求:定义一个包含有10个整数的数组a并初始化,定义一个指针变量p,p指向数组a,定义函数fun,在fun内部访问数组,并打印出数组中各元素的值,在fun函数内不要出现数字10.
代码及说明:
#include<stdio.h> #include<time.h> #define N 10 //宏定义 定义N 为 10 int i=0; //定义一个全局变量用于在程序中进行循环 void fun(int a[],int n) //fun函数的参数用来传递数组的首地址和数组的个数 { printf("输出一个有%d个元素的输出如下: ",n); for(i=0;i<n;i++) //用for循环输出数组 { printf("%d ",a[i]); } } int main() { int *p,number; //定义了一个整形指针变量p和一个整形变量choose int a[N]; //定一个数组 p=a; //指针变量初始化 将数组的首地址赋值给指针变量p srand(time(0)); //是以当前时间为种子,产生随意数。其中,time(NULL)用来获取当前时间,本质上得到的是一个大整数,然后用这个数来随机数。 for(i=0;i<N;i++) { a[i]=rand()%100; //将rand()的返回值与100求模是必须的,这样才能确保目的随机数落在[0,100)之间,否则rand()的返回值本身可能是很巨大的。 } printf("请输入您要输出随机生成的数值中的第几个元素:"); scanf("%d",&number); printf("第%d元素为:%d ",number,*(p+number-1)); //用指针索引输出第几个元素 fun(p,N); }
测试运行:
请输入您要输出随机生成的数值中的第几个元素:3 第3元素为:0 输出一个有10个元素的输出如下: 11 94 0 73 28 47 25 33 33 1
结论:
定义一个fun函数传递了数组和数组元素个数的参数对数组进行了输出。
在定义数组的时候没有直接使用数字而是使用了宏定义这样只要改一处就可以实现整篇幅代码的更改。
当数据要进行更改的时候就变得十分简单,所以当一个程序出现了一些常用或者是十分繁琐的东西的时候我们就可以使用到宏。