C语言程序设计实验报告(实验大纲+过程)(5)

2019-08-30 22:11

统计与信息学院

《C程序设计》实验报告( 七 )

学号: 实验名称:函数 实验地点: 实 验 要求 姓名: 班级: 指导教师:张雄 成绩: 实验日期: 实验软件(主要仪器设备):Visual C++6.0 1.掌握定义函数的方法; 2.掌握函数实参与形参的对应关系,以及“值传递”的方式; 3.掌握函数的嵌套调用和递归调用的方法; 4.掌握全局变量和局部变量,动态变量和静态变量的概念和使用方法。 实验①:写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的信息。 1、输入 #include int is_prime(int m) { int i; if(m==1) return 0; for(i=2;i void main() { int gy(int,int); int gb(int,int); int m,n; restart: scanf(\ printf(\最大公约数是%d\\n\ printf(\最小公倍数是%d\\n\ goto restart; } int gy(int x,int y) { int a,b,c,d; if(x>=y) {a=x,b=y;} else {a=y,b=x;} while(d!=0) {c=a/b;d=a%b;a=b;b=d;} return a; } int gb(int x,int y) { return(x*y)/gy(x,y); } 2、编译,无错误、无警告后运行,结果如下: 实 验 过程 与 步 骤 21

实验③:已知二阶Fibonacci数列: 0 若n=0 Fib(n)= 1 若n=1 Fib(n-1)+Fib(n-2) 其他情况 定义递归函数求Fib(n)。 1、输入 #include int fib(int n) { if(n==0 ) return 0; else if(n==1) return 1; else { return fib(n-1)+fib(n-2); } } void main() { int n; scanf(\ printf(\} 2、编译,无错误、无警告后运行,结果如下: 实验④:编写函数,求 ?n! 110 1、输入 #include int func(int n) { if(n==0||n==1) { return 1; } else { return n*func(n-1); } } int main(void) { int n; int i; int sum = 0; printf(\请输入一个正整数:\ scanf(\ for (i=1;i<=n;i++) { sum+=func(i); } printf(\ return 0; } 2、编译,无错误、无警告后运行,结果如下: 实验 总结

22

统计与信息学院

《C程序设计》实验报告( 八 )

学号: 实验名称:指针 实验地点: 实 验 要求 姓名: 班级: 指导教师: 成绩: 实验日期: 实验软件(主要仪器设备):Visual C++6.0 1.掌握指针的概念,会定义和使用指针变量; 2.学会使用数组的指针和指向数组的指针变量; 3.学会使用字符串的指针和指向字符串的指针变量; 4.学会使用指向函数的指针变量; 5.了解指向指针的指针的概念及其使用方法。 实验①:1.定义函数void fun(int x[ ],int *max,int *min),找出数组x中的最大值和最小值,最大值和最小值通过形参指针max和min传回。 1、 输入 #include #define N 10 { void fun(int *a,int n) int i,j,k,big; i=0;big=a[0]; for(i=0;i

实验②:编写一个函数comp(s1,s2)实现两个字符串的比较。 1、输入 1.编写以下函数: #include #include main() { char s1[100],s2[100]; int i=0,j=0; printf(\ do { scanf(\ s1[i]='\\0'; printf(\do { scanf(\ }while(s2[j++]!='\\n'); s2[j]='\\0'; i=-1; j=-1; do { i++; j++; if(s1[i]>s2[j]||(s1[i]!='\\0'&&s2[j]=='\\0')) { 2、编译,无错误、无警告后运行,结果如下: 实验③:从键盘输入一个字符串与一个指定字符,调用函数,将字符串中出现的指定字符全部删除。 1、输入 #include \#include \#include \ void prochar(char *str,char c) { char *p; for(p=str;*p!='\\0';p++) if(*p!=c) *str++=*p; *str='\\0'; } void main() { char str[80],char_c; gets(str); scanf(\ prochar(str,char_c); puts(str); getch(); } 2、编译,无错误无警告后运行,结果如下: 24

实验④:将一个3×3的矩阵转置,用一函数实现。 在一主函数中用scanf函数输入以下矩阵元素: 1 3 5 7 9 11 13 15 17 将数组名作为函数参数,在执行函数的过程中实现矩阵转置,函数调用结束后在主函数中输出转置后的矩阵。 1、输入 #include #define N 3 int array[N][N]; void main() { void convert(int array[][3]); int i,j; printf(\输入数组:\\n\ for(j=0;j


C语言程序设计实验报告(实验大纲+过程)(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:物联网认识实习报告 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: