实验报告一(指针).doc

上传人:罗晋 文档编号:6357951 上传时间:2020-11-01 格式:DOC 页数:5 大小:23.50KB
返回 下载 相关 举报
实验报告一(指针).doc_第1页
第1页 / 共5页
实验报告一(指针).doc_第2页
第2页 / 共5页
实验报告一(指针).doc_第3页
第3页 / 共5页
实验报告一(指针).doc_第4页
第4页 / 共5页
实验报告一(指针).doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《实验报告一(指针).doc》由会员分享,可在线阅读,更多相关《实验报告一(指针).doc(5页珍藏版)》请在三一文库上搜索。

1、指针实验一 指向变量的指针变量编程一实验目的与要求1. 理解指针的概念。2. 掌握指针变量的定义与使用。3. 掌握指针变量作为函数参数的使用方法。二实验题目1. 用指针变量编程,求数组中的最大元素和最小元素。#include stdio.h#define N 10void main()void maxmin(int arr,int *pt1,int *pt2,int n);int arrayN=10,7,19,29,4,0,7,35,-16,21,*p1,*p2,a,b;p1=&a; p2=&b;maxmin(array,p1,p2,N);printf(max=%d,min=%dn,a,b);

2、 void maxmin(int arr,int *pt1,int *pt2,int n) int i;*pt1=*pt2=arr0;for(i=1;i*pt1) *pt1=arri ;if(arri*pt2) *pt2=arri ;实验二 字符指针编程一实验目的与要求1. 理解字符指针的概念。2. 掌握字符指针的定义与使用。二实验题目2. 用字符指针编程求出字符串中指定字符的个数。例如:假设字符串为:“abcdaghckpamn”,指定字符为a,则结果为3。要求:从main函数输入字符串和指定字符,输出结果。#include #define MAXLEN 20int CountLetter(

3、char *str, char ch)int time = 0;while(*str)if(*str+ = ch)time + ;return time ;int main()char strMAXLEN ;char ch ;printf(Please input a string:n) ;scanf(%s, str) ;getchar() ;/get enterprintf(Input the a letter to count:) ;scanf(%c, &ch) ;printf(%dn, CountLetter(str, ch) ;实验三 指向一维数组的指针变量编程一实验目的与要求1. 理

4、解指针与数组之间的关系。2. 掌握用指针变量引用数组元素的方法。3. 掌握用指向一维数组的指针变量编程。二实验题目3. 已知一个整型数组,编程将其数组元素的值改为当前元素与相邻的下一个元素的乘积,数组的最后一个元素改为它与第0个元素的乘积,要求用指针变量实现。例如:已知a5=1, 2, 3, 4, 5; 计算后a5=2, 6, 12, 20, 10。#define N 5 #include stdio.hvoid f(int *p,int n)int i;for(i=0;in;i+)*(p+i)=(*(p+i)*(*(p+(i+1)%n);int main()int aN,i;for (i=0

5、;iN;i+)scanf(%d,&ai);f(a,N); for (int j=0;jN;j+)printf(%d ,aj);return 1;实验四 指向二维数组的指针变量编程一实验目的与要求1. 理解二维数组的地址表示方法。2. 掌握用指针变量表示二维数组的元素和元素的地址。3. 掌握用指向二维数组的指针变量的使用。二实验题目4. 用一个二维数组score43来存放4个学生3门课的成绩,编程实现:(1) 输入学生成绩; (2) 求出每个学生的平均分,将其保存在数组a4中; (3) 求出每门课程的平均成绩,将其保存在数组b3中;(4) 输出数组a、b中成绩。要求:用指向二维数组元素的指针变量

6、实现。#include stdio.hvoid inputScore(float (*p)3)/输入学生成绩 int i,j;printf(请输入学生成绩,每个学生3门课程成绩,共4名学生n); for (i = 0;i4; i+) printf(请输入学生%d的3门课的成绩n,i+1);for(j = 0;j3;j+)scanf(%f,pi+j); void avstu(float *psco,float *pa)/求每个学生的平均成绩int i,j;float ave; for (i= 0; i4;i+) ave=0; for(j= 0;j3; j+) ave+=(*(psco+3*i+j

7、);/累计每门课的成绩 *(pa+i)=ave/3; void avsco(float (*psco)3,float *pb)/求每门课的平均成绩int i,j;float ave; for (j= 0; j3;j+) / j表示列 ave=0; for(i= 0;i4;i+) / i表示行 ave+=(*(*(psco+i)+j);/累计每个学生的各科成绩 *(pb+i)=ave/4; void outputScore(float *pa,float *pb)/输出a,b中成绩 int i;printf(每个学生的平均成绩为:n); for (i = 0;i4; i+,pa+)printf(%6.2f,*pa); printf(n); printf(每门课的平均成绩为:n);for (i = 0;i3; i+,pb+)printf(%6.2f,*pb); printf(n);void main()float score43,a4,b3;inputScore(score);avstu(*score,a);/或avstu(&score00,a);或;avstu(score0,a);avsco(score,b);/行指针outputScore(a,b);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1