北京网站关键词优化,网站规划与设计一千字,网站建设费计入哪个二级科目,上海平面设计师招聘C程序设计实验报告姓名#xff1a;林世龙 实验地点#xff1a;学校 实验时间#xff1a;2020.06.03实验项目8.31.指针基础及指针运算8.3.2.数据交换8.3.3.字符串反转及字符串连接8.3.4.数组元素奇偶排列一、实验目的与要求1、加强对学生对指针数据类型的理解#xff0c;熟…C程序设计实验报告姓名林世龙 实验地点学校 实验时间2020.06.03实验项目8.31.指针基础及指针运算8.3.2.数据交换8.3.3.字符串反转及字符串连接8.3.4.数组元素奇偶排列一、实验目的与要求1、加强对学生对指针数据类型的理解熟悉指针的定义、通过指针间接访问变量的方法。2、加强对指针类型作为函数参数传递的理解。3、加强对字符指针及将指针作为函数的返回类型的理解并通过指针对字符串进行操作。4、加强对使用指针对数组进行操作的理解通常数组的名称即整个数组的起始存储地址。二、实验内容8.3.1.指针基础及指针运算1.问题的简单描述定义整型指针变量p,使之指向整型变量a;定义浮点型指针q,使之指向浮点变量b,同时定义另外一个整型变量c并赋初值3。使用指针p,q输入a,b表达值通过指针p,q间接输出a,b的值输出p,q的值及c的地址。2、实验代码#include int main(){int *p,a,c3;float *q,b;pa;qb;printf(Please Input the Value of a,b: );scanf(%d%f,p,q);printf(Result: \n);printf(%d,%f\n,a,b);printf(%d,%f\n,*p,*q);printf(The Address of a,b:%p,%p\n,a,b);printf(The Address of a,b:%p,%p\n,p,q);pc;printf(c%d\n ,*p);printf(The Address of c:%x,%x\n,p,c);return 0;}3、问题分析无8.3.2.数据交换1问题的简单描述从主函数中调用swap1和swap2函数并打印输出交换后a、b的结果。2实验代码#includevoid swap1(int x,int y);void swap2(int *x,int *y);int main(){int a,b;printf(Please Input a:);scanf(%d,a);printf(\nb:);scanf(%d,b);swap1(a,b);printf(\nAfter Call swap1:a%d,b%d\n,a,b);swap2(a,b); //指针作为形参实参须为地址printf(\nAfter Call swap2:a%d,b%d\n,a,b);return 0;}void swap1(int x,int y){int temp;tempx;xy;ytemp;}void swap2(int*x,int *y){int temp;temp*x;*x*y;*ytemp;}3问题分析当指针作为形式参数时实际参数为地址8.3.3.字符串反转及字符串连接1问题的简单描述定义两个字符指针通过指针移动方式将字符串反转以及将两个字符串连接起来。2实验代码#include char *reverse(char *str);char *link(char *str1,char *str2);int main(){char str[30],str1[30],*str2;printf(Input Reversing Character String:);gets(str);str2reverse(str);printf(\nOutput Reversed Characyer String:);puts(str2);printf(Input string1:);gets(str);printf(\nInput string2:);gets(str1);str2link(str,str1);puts(str2);return 0;}char *reverse(char *str){char *p,*q,temp;pstr,qstr;while(*p!\0)p;p--;while(q{temp*q;*q*p;*ptemp;p--;q;}return str;}char *link(char *str1,char *str2){char *pstr1,*qstr2;while(*p!\0)p;while(*q!\0){*p*q;p;q;}*p\0;return str1;}3问题分析刚开始对指针移动内容不太明白后来经过老师讲解之后明白了8.3.4.数组元素奇偶排列1.问题的简单描述定义一个函数实现数组元素奇数在左、偶数在右。2实验代码#include #define N 10void arrsort(int a[],int n);int main(){int a[N],i;for(i0;iscanf(%d,a[i]);arrsort(a,N);for(i0;iprintf(%d ,a[i]);}void arrsort(int a[],int n){int *p,*q,temp;pa;qan-1;while(p{while(*p%2!0)p;while(*q%20)q--;if(pq)break;temp*p;*p*q;*qtemp;p;q--;}}3问题分析无三、实验小结指针这个单元学习的有点困难没有书的模板根本做不出来还有很多知识点需要自己多花时间消化学习。来源https://www.cnblogs.com/zql1228687135/p/13063822.html