西南交大C++实验12.doc

上传人:豆**** 文档编号:24124803 上传时间:2022-07-03 格式:DOC 页数:12 大小:154KB
返回 下载 相关 举报
西南交大C++实验12.doc_第1页
第1页 / 共12页
西南交大C++实验12.doc_第2页
第2页 / 共12页
点击查看更多>>
资源描述

《西南交大C++实验12.doc》由会员分享,可在线阅读,更多相关《西南交大C++实验12.doc(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流西南交大C+实验12.doc.精品文档.实验_12_实验报告教学班级: _ 学生学号: 学生姓名: 实验日期: 实验地点:_(机房) 指导教师签名:_ 实验成绩:_ 一、实验目的1. 掌握指针变量的使用;2. 掌握用指针方式访问一维数组。二、实验任务1. 求,其中x和n均为整数,由键盘输入。编程输出公式中的每一项的值、以及sum的值。要求:x, n, sum均用指针。2. 统计一维整型数组中能被3整除的元素个数,并输出。要求:数组元素由键盘输入;用指针方式访问数组。3. 学生成绩统计:随机产生30名学生的成绩(0100之间的整数),存放于一维

2、数组中;输出学生成绩,每行10个数。然后统计并输出90-100、80-80、70-79、60-69、小于60这五个分数段的学生人数。要求:用指针方式访问数组。程序运行结果类似于下图:4. 编程将一维数组中保存的10个整数循环左移m位,m的值由键盘输入。例如:数组元素为:8,5,13,21,3,2,6 ,7,12,10;m的值为3,则移动后的数组为:21,3,2,6 ,7,12,10,8,5,13。要求:用指针方式访问数组,程序中只能使用一个数组。5. 有一组整数,其排列形式为:8,5,13,15,3,11,6,7,22,10,且尾部的10和头部的8首尾相连,构成一个环形。编程求出相邻的任意四个

3、数之和,并输出。然后找出相加之和最大的四个数,输出求和的结果以及这四个数。要求:用指针方式访问数组。程序运行结果类似于下图,实验报告中的运行结果截图,不能与下图中的数据一样。三、实验结果(源程序 + 注释)1.#include using namespace std; void main()cout学号: 姓名:endl;cout=endl;int n,i=1;int *pn=&n;double x,sum,j;double *px=&x,*psum=∑cout请分别输入x和n的值:*px*pn;j=x;*psum=0;while(i=*pn)*psum=*psum+j;i+;j=j*

4、x/i;coutsum=*psumendl;2.#include using namespace std; void main()cout学号: 姓名:endl;cout=endl;int a100,n,j=0,*p;cout请输入一维整型数组中的元素个数:n;cout请输入一维整型数组中的元素:endl;for(p=a;p*p;for(p=a;pa+n;p+)if(*p%3=0)j=j+1;cout该数组中能被3整除的元素个数为:jendl;3.#include #include#includeusing namespace std; void main()cout学号: 姓名:endl;c

5、out=endl;int a30,*q,i=0;/a30用于存放30名学生的成绩int c5=0;/分别存放5个分数段的学生人数int *pa=a,*pc=c;/初值分别存放数组a和c的首地址srand(time(NULL);for(q=a;qa+30;q+)*q=0+rand()%(100-0+1);cout学生成绩为:endl;for(q=a;qa+30;q+)coutsetw(6)*q;i=i+1;if(i%10=0)coutendl;switch(*q/10)case 10:case 9:*(pc+4)=*(pc+4)+1;break;case 8:*(pc+3)=*(pc+3)+1;

6、break;case 7:*(pc+2)=*(pc+2)+1;break;case 6:*(pc+1)=*(pc+1)+1;break;default:*pc=*pc+1;cout学生成绩统计如下:endl;coutsetw(10)分数段setw(10)90100setw(10)8089setw(10)7079setw(10)6069setw(10)60以下endl;coutsetw(10)人数setw(10)*(pc+4)setw(10)*(pc+3)setw(10)*(pc+2)setw(10)*(pc+1)setw(10)*pcendl;4.#include using namespac

7、e std; void main( ) cout学号: 姓名:endl;cout=endl;int a20,*p;int m,i,t;coutm;cout循环左移m位前,数组元素为:endl;for(p=a;p*p;for(i=0;im;i+)p=a;t=*p;for(;pa+9;p+)*p=*(p+1);*p=t;cout数组循环左移m位后的数组为:endl;for(p=a;pa+10;p+)cout*p ;coutendl;5.#include #includeusing namespace std; void main()cout学号: 姓名:endl;cout=endl;const i

8、nt N=10;int aN=8,5,13,15,3,11,6,7,22,10;/用于存放10个整数;int bN=0,i,j,max,pos,sum;/用于存放ai及其后3个整数之和;int *pa=a,*pb=b;/初值分别存放数组a和b的首地址;cout数组中的元素为:endl;for(i=0;i*(a+i);for(i=0;iN;i+)sum=0;for(j=i;jN-1)sum+=*(a+j-N);elsesum+=*(a+j);*(b+i)=sum;cout相邻4个数之和分别是:endl;max=*(b+0);for(i=0;iN;i+)coutsetw(6)max)max=*(b+i);pos=i;coutendl;cout最大的和值是:maxendl;cout参与求和的4个数是:;for(i=pos;iN-1)coutsetw(6)*(a+i-N);elsecoutsetw(6)*(a+i);coutendl;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁