C语言实验指导书24学时(5)
C语言程序设计实验指导书
都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩一个桃子了。求第一天共摘了多少个桃子。(用递归函数实现)
2.年龄问题:一家有4个孩子,已知最小的孩子10岁,若每个孩子的年龄都差2岁,问最大的孩子几岁。(用递归函数实现)
3 编写求n!的函数f(int n),在主函数中输入两个整数m、n,然后调用函数求:
Cnm?m!n!(m-n)!【注意】函数f的类型应用long或double 。
20
C语言程序设计实验指导书
实验九 指针
一 实验目的
1 了解指针的概念,学会定义和使用指针变量。 2 掌握指针、变量和数组的关系及使用方法。 3 学会使用指向函数的指针变量。
二 实验内容
1 运行下列程序,写出运行结果。 #include \stdio.h\ main()
{ int a[5],*p,j;
for(j=0;j<5;j++) a[j]=j+1; p=a;
for(j=0;j<5;j++) printf(\*(p+%d)=%d\\n\,j,*(p+j)); }
将输出语句中的*改成方括号的形式,修改后再运行程序。
2 函数void fun(float *sn,int n)的功能是:根据以下公式计算S,计算结果通过形参指针sn传回;n通过实参传入,n的值大于等于0。请填空,并编写出主函数,使之成为完整程序,上机调试运行。
S?1?1111 ????3572n?1void fun(float *sn,int n) { float s=0.0,w,f=-1.0; int i=0;
for (i=0;i<=n;i++); { f= * f;
w=f/(2*i+1); s+=w; }
=s; }
3 想使指针变量pt1指向a和b中的大者,pt2指向小者,以下程序能否实现此目的? swap(int *p1,int *p2) { int *p;
21
C语言程序设计实验指导书
p=p1;p1=p2;p2=p } main()
{ int a,b; int *pt1,*pt2 ; scanf(\%d,%d\,&a,&b); pt1=&a; pt2=&b ; if(a
printf(\%d,%d \\n\,*pt1,*pt2) ; }
上机调试此程序。如果不能实现题目要求,指出原因并修改之。 4 分析并验证以下程序的运行结果。 #include \stdio.h\ main()
{ char str[]=\ABC\,*p=str; printf(\%c\\n\,*(p+1)); }
5 分析并验证以下程序的运行结果: #include \stdio.h\ main()
{ char a[4][5]={\ABCD\,\EFGH\,\IJKL\,\MNOP\}; char (*p)[5]; int i,j; p=a;
for(i=0;i<4;i++)
{ for(j=0;j<4;j++) printf(\%c\,*(*(p+i)+j)); /* 第9行 */
printf(\\\n\); } }
若将程序第9行中的%c改成%s,应该怎样修改? 6 分析以下程序运行结果,说明程序的作用。 #include \stdio.h\
char *strc(char *s1,char *s2) { char *p=s1;
while(*s2!='\\0') { *p++=*s2++; }
22
C语言程序设计实验指导书
return s1; } main()
{ char s1[30]=\computer ok!\,s2[]=\language\,*pt; pt=strc(s1,s2); printf(\%s\\n\,pt); }
三 思考题
1 下面的程序用来实现将一个3×3的矩阵转置。 #include \stdio.h\ void tranf(int (*p)[3]) { int t,i,j; for(i=0;i<3;i++) for(j=0;j
{ t=p[i][j]; p[i][j]=p[j][i]; p[j][i]=t; } } main()
{ int i,j,a[3][3]; for(i=0;i<3;i++)
for(j=0;j<3;j++) scanf(\%d\,&a[i][j]); tranf(a); for(i=0;i<3;i++)
{ for(j=0;j<3;j++) printf(\=\,a[i][j]);
printf(\\\n\); } }
将上面程序tranf函数中的的方括号改成*号的表示形式,调试并运行程序。 程序输入:1 2 3 4 5 6 7 8 9,记录程序的输出。
2 用指向指针的方法对n个整数排序并输出。要求将排序单独写一个函数。n和各个整数在主函数中输入,最后在主函数中输出。
四 注意事项
1 一个指针变量定义后,必须使其指向确定值(即给它赋值),否则,如果直接应用它的目标,就会破坏内存,使程序出错,甚至造成死机。
23
C语言程序设计实验指导书
2 注意二维数组元素的不同表示方法,必须灵活掌握。
24
…… 此处隐藏:52字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [综合文档]应答器设备技术规范(征求意见稿)A1
- [综合文档]教师 2012年高考政治试题按考点分类汇
- [综合文档]保险公司的总经理助理竞职演说
- [综合文档]卫生应急大练兵大比武活动考试--题库(
- [综合文档]徐州经济技术开发区总体规划环境影响报
- [综合文档]汉语拼音表(带声调)
- [综合文档]二年级 上 思维训练( 1~18)
- [综合文档]特色学校五年发展规划
- [综合文档]机床经常出现报警“X1轴定位监控”
- [综合文档]《电子技术基础》21.§5—2、3、4 习题
- [综合文档]浙江省深化普通高中课程改革
- [综合文档]CRISP原理 - 图文
- [综合文档]2017年电大社会调查研究与方法形考答案
- [综合文档]浅析建筑施工安全毕业论文
- [综合文档]《回忆我的母亲》名师教案
- [综合文档]装饰装修工程监理规划
- [综合文档]三下乡心得体会-文艺
- [综合文档]柱计算长度系数 - 图文
- [综合文档]全流程思考,提高燃电系统热电转换率--
- [综合文档]2018年嘉定区中考物理一模含答案
- 433M车库门滚动码遥控器
- 8、架空线路施工规范
- 大学四年声乐学习的体会
- 新北师大版五年级数学上册《轴对称再认
- 部编版五年级上册语文第六单元小结复习
- 小学六年级英语形容词用法
- 第2课 抗美援朝保家卫国 课件01(岳麓版
- 2015年天津大学运筹学基础考研真题,考
- 微机计算机控制技术课后于海生(第2版)
- 安全教育实践活动
- Delphi程序设计教程_第1章_Delphi概述
- 第八讲 工业革命与启蒙运动
- 《中华人民共和国药典》2005年版二部勘
- 科粤版九年级化学2.3构成物质的微粒(1)
- 西师大版数学三年级下册《长方形、正方
- ch6_冒泡排序演示
- 第4章 冲裁模具设计
- 浙江中小民营企业员工流失论文[终稿]
- 再议有线数字电视市场营运模式
- 昆明供水工程监理大纲




