《C-10二维数组和指针》由会员分享,可在线阅读,更多相关《C-10二维数组和指针(34页珍藏版)》请在金锄头文库上搜索。
1、二维数组和指针目标了解并学会使用二维数组二维数组和指针int a34 = 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23 ;二维数组和指针a0- 1357a1- 9111315a2- 17192123a-a是一个数组名,a数组包含3个元素,每个 元素又是一个一维数组a0-1a0 +1-3 a0 +2-5 a0 +3-7 a0 +4-9 a0 +5-11 a0 +6-13 a0 +7-15 a0 +8-17 a0 +9-19 a0 +10- 21 a0 +11- 231 3 5 7 9 11 13 15 17 19 21 23a0a1a2a按顺序输出数组中的元
2、素 void main() int a34 =1,3,5,7, 9,11,13,15, 17,19,21,23; for (int i = 0; i #include void main() int a34=1,3,5,7,9,11,13,15,17,19,21,23; printf(“%dn“,a); printf(“%dn“,a0); printf(“%dn“, printf(“%dn“,a1); printf(“%dn“,#include #include #define FORMAT “%d,%dn“ void main() int a34=1,3,5,7,9,11,13,15,17,
3、19,21,23; printf(FORMAT,a,*a); printf(FORMAT,a0,*(a+0); printf(FORMAT, printf(FORMAT,a1,a+1); printf(FORMAT, printf(FORMAT,a2,*(a+2); printf(FORMAT, printf(FORMAT,a10,*(*(a+1)+0); getchar(); 有一个班,个学生,各学门课,计算总平均分数以及第个学生的成绩。用函数average求总平均成绩,用函数printScore输出第n个学生的成绩。#include void average(float *p,int n)
4、; void printScore(float (*p)4,int n);void main() float score34= 65,67,70,60,80,87,90,81,90,99,100,98; average(*score,12); printScore(score,2); void average(float *p,int n) float *p_end; float sum=0,aver; p_end=p+n-1; for(;p.int *p4 ; (p 是指针数组,有4个元素,每个元素为int * 型)p0p1p2p3在上题基础上,查找有一门以上课程不及格的学生,打印出他们的全
5、部课程的成绩。 #include void searchPrint(float (*p)4,int n); void main() float score34=65,57,70,60,58,87,90,81,90,99,100,98; searchPrint (score,3); void searchPrint (float (*p)4,int n) int i,j,flag; for(j=0;j #include void sort(char *name ,int n); void print(char *name ,int n); void main() char *name =“Fol
6、low me“,“BASIC“,“Great Wall“,“FORTRAN“,“Computer design“; int n=5; sort(name,n); print(name,n); char *name5; name0 = “Follow me“; name1 = “BASIC“; name2 = “Great Wall“; name3 = “FORTRAN“; name4 = “Computer design“;void sort(char *name ,int n) char *temp; int i,j,k; for(i=0;i0) k=j; if(k!=i) temp=nam
7、ei; namei=namek; namek=temp; void print(char *name ,int n) int i; for(i=0;i void main() char *name=“Follow me“,“BASIC“,“Great Wall“,“FORTRAN“,“Computer design“; char *p; int i; for(i=0;i void main() char *name=“Follow me“,“BASIC“,“Great Wall“,“FORTRAN“,“Computer design“; char *p; int i; for(i=0;i void main() int a5=1,3,5,7,9; int *num5= int *p,i; p=num; for(i=0;i1) +argv; printf(“%sn“, *argv); -argc; 在DOS命令状态下输入的命令行为 则执行以上命令行将会输出以下信息: 练习一下将一个dimY行和dimX列的二维数组src的行列交换 ,交换后的数组存放在dst中,dst中有dimX行和 dimY列。 要求:使用函数实现,并在main函数中对此函数进行验证使用两种以上的传参数的方法实现