1、 3、掌握使用指针操作数组元素的方法 4、掌握使用指针操作字符串的方法 二、知识要点 1、变量的直接访问和间接访问的概念 2、指针和指针变量的概念 3、简单变量的指针及指向简单变量的指针变量的定义、赋值及使用 4、数组的指针及指向数组的指针变量的定义、赋值及使用 5、字符串的指针及指向字符串的指针变量的定义、赋值及使用 三、实验预习 (要求做实验前完成) 1、写出一个C语句,使得指针变量u指向变量x: 2、写出一个C语句,输出“指针变量p指向的整型变量”的值: 3、把“指针变量u所指向的变量”的值变为40,其语句是: 4、定义三个变量,其中x1是整型变量;y1、y2是指向整数的指针变量: 5、
2、若有语句:char t20= “abcdefgh”,*p;则使p指向字符串的第一个字符的语句是:四、实验内容 (以下题目要求使用指针方法完成) 1、已知一个整数数组x4,它的各元素值分别为3、11、8和22。使用指针表示法编程序,求该数组各元素之积。#include stdlib.hint main()int s,i,x4=3,11,8,22; int *p; p=x; s=x0; for (i=0;iai) min=ai; c=i; if (max char b50= 0, a50= 0; char *p,*q; gets (b); p=b; q=a; while (*p!=0) if (*
3、p)9) *q=*p; q+;puts (a);4、编写参数为指针变量的函数del,功能是删除字符串中的*号。要求在主函数中定义数组a,b,输入字符串给数组a,调用del删除*号后存放在数组b中,输出b数组。void del (char str150,char str250) gets (str1); p=str1; q=str2; if (*p!*int main () char a50= 0,b50= 0; del (a,b); puts (b) ; 5、编写参数为指针变量的函数,功能是将数组元素按输入顺序逆置存放,要求在主函数中输入数组元素的值,在主函数中输出逆置后的数组。void de
4、l (char a50) char *q,*p,b50=0; int n,i; p=a; q=b; n=strlen (a); for (i=n; i0; i-) *q=*(p+i-1); puts (b); char c50; gets (c); del (c); 6、编写参数为指针变量的函数fun,功能是交换两个数组中的对应元素。已知数组a元素值分别为10,20,30,40,数组b元素值分别为1,2,3,4,要求在主函数中输出交换后的a和b数组。void del (int a4,int b4) int *p,*q,*s,i,c4; s=c; i4; i+) *(c+i)=*(p+i); *
5、(p+i)=*(q+i); *(q+i)=*(c+i); printf (%dt,bi) ; int a4= 10,20,30,40,b4= 1,2,3,4;7、利用动态内存分配的方法,输入一个班的学生某门功课的成绩,人数由用户指定,输出全班平均分以及最高分和最低分。 int max=0,min=0,s=0,i=0,w=0,num=0;请输入人数: scanf (num); int *p=(int*)malloc(num*sizeof(int),*q; q=p; for(i=0;num;,p); p=q; max=min=*p; if(max min=*p; s=s+*p; w=s/num; free (p);平均分为%dn,w);最高分为%dn,max);最低分为%d,min);五、实验结果(要求写出运行界面及输出的运行结果)六、实验小结2. #include int a10,i,t=0,s=0,max,min,b,c; int *p,*q;,*p); b=i; t=*p; *p=min; *(p+b)=t; s=*(p+9); *(p+9)=max; *(p+c)=s;
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1