厦门理工学院 C语言报告实验6_函数

更新时间:2024-05-04 23:41:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《C语言程序设计》实验报告

实验序号:6 实验项目:函数 学 号 实验地点 姓 名 指导教师 林仙丽 专业、班级 实验时间 网络工程 2012年12月29日 一、实验目的及要求 1、掌握函数声明、定义和使用的方法; 2、掌握函数嵌套和递归调用的方法; 3、掌握全局变量、局部变量、静态局部变量的概念和使用方法; 4、掌握定义头文件的方法,学会建立和调试多文件程序; 5、实验内容采用函数方法完成。 二、实验设备(环境)及要求 使用Visual C++ 6.0;windows系列操作系统的环境。 三、实验内容与步骤 1.编写一个函数prt(c,n),重复打印给定的字符c,n次。在主函数中调用prt(c,n)函数,打印一个直角三角形。 如:prt(*,6)的结果如下: * ** *** **** ***** ****** 【实验提示】函数prt(c,n)完成输出功能,是一个void函数,有两个参数。 函数源代码部分: 运行结果截图: 2.写四个函数分别用于计算圆周长、圆面积、圆柱表面积,圆柱体积,在main函数中完成测试。 运行结果截图: 3.根据以下公式求π的近似值,直到最后一项的绝对值小于10-5为止 π21111?2?2?2???2 6123n运行结果截图: 4.用递归方法计算1?2?3???n的值,n的值由键盘输入 运行结果截图: 3333 5.以下程序的功能是计算s=?k!,补足所缺语句。 k?0n#include “stdio.h” long fun(int n) { int I; long m; m= 1 ; for(I=1; I<=n; I++) m= I*m ; return m; } main() { long m; int k,n; scanf(“%d”,&n); m= 0 ; for(k=0;k<=n;k++) m=m+ fun(k) ; printf(“%ld\\n”,m); } 运行结果截图: 6.【附加题】写一个函数,使输入的一个字符串按反序,在主函数中输入字符串和,在非主函数中输出反序后的字符串。 运行结果截图: 7.【附加题】编写程序,证明100-200之间的所有偶数均可写成两个素数之和,并输出。 运行结果截图: 四、分析与讨论 对上机实践结果进行分析,上机的心得体会。 五、教师评语 签名: 日期: 附源程序清单: 1.

#include void main() { void prt(char c,int n); char a; int x; scanf(\ prt(a,x); }

void prt(char c,int n) { int i,k; for(i=1;i<=n;i++) { for(k=1;k<=i;k++) printf(\ printf(\

成绩 } } 2.

#include #define PI 3.14 void main() {

float perimeter(float a); float area(float a);

float surface(float b,float h); float volume(float b,float h); float r,hh;

printf(\请输入半径r和高h:\ scanf(\

printf(\圆周长:%-10.2f\\n圆面积:%-10.2f\\n圆柱表面积:积:%-10.2f\\n\}

float perimeter(float a) {

float p; p=2*a*PI; return p; }

float area(float a) {

float ar; ar=a*a*PI; return ar; }

float surface(float b,float h) {

float area(float a);

float perimeter(float a); float s;

s=area(b)*2+h*perimeter(b); return s; }

float volume(float b,float h) {

float area(float a); float v;

v=h*area(b); return v; }

圆柱体%-10.2f\\n3.

#include #include void main() {

float PI,sum=0; int n;

for(n=1;;n++) { if(1.0/pow(n,2)>=10e-5) sum+=1.0/pow(n,2); else break; }

PI=sqrt(6*sum); printf(\} 4.

#include #include void main() {

int n;

long fact(int i); scanf(\

printf(\}

long fact(int i) {

long sum=0;

if(i>=1) sum=sum+pow(i,3)+fact(i-1); return sum; } 5.

#include long fun(int n) { int I; long m; m=1;

for(I=1; I<=n; I++) m=m*I; return m; }

main() {

long m;

int k,n;

scanf(\ m=0;

for(k=0;k<=n;k++) m=m+fun(k); printf(\} 6. 7.

本文来源:https://www.bwwdw.com/article/yodg.html

Top