C语言程序设计—函数—实验报告_c语言函数实验报告

2020-02-28 其他范文 下载本文

C语言程序设计—函数—实验报告由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“c语言函数实验报告”。

实 验 报 告

专业

软 件 工 程

班级

X

学号_ XXXXXXXXXXX_

姓名

实验日期:201X年X月X日

报告退发(订正、重做)

课程

C程序设计实验

实验名称

一、实验目的① 熟练掌握C程序中函数的定义; ② 掌握函数的调用,函数参数的传递; ③ 熟练掌握函数的嵌套调用和递归调用;

二、实验环境(描述实验的软件、硬件环境)

① 软件环境:windows xp/win7等操作系统,Microsoft Visual C++ 6.0编译器; ② 硬件环境:PC机一台

三、实验内容、步骤和结果分析

题目一:编写一个用来判断质数(素数)的函数。

要求:

(1)在main函数中调用该函数对输入的数值进行判断,并输出判断结果;(2)当输入数值

#include #include /*=======判断质数(素数)的函数=======*/ int judgePrime(int n){

} /*=======判断质数(素数)的函数=======*/ int main(){

printf(“n提示:输入一个数字来判断是否是质数(素数),当输入数值1;){ printf(”Please enter a number:“);for(int i=2;i

} return 1;if(n%i==0)return 0;else continue;

}

} scanf(”%d“,&num);if(num

题目二:使用习题1中所编写的判断质数的函数验证哥德巴赫(Goldbach)的1+1猜想-----任何一个>=6的偶数都可以表示成两个素数之和

要求:

① 屏幕提示用户一个>=6的偶数;

② 输出这个偶数等于2个素数之和的表达式; ③ 当输入数据

#include #include /*=======判断质数(素数)的函数=======*/ int judgePrime(int n){

for(int i=2;i

if(n%i==0)return 0;else continue;

} } return 1;//true-->1,false-->0 /*=======验证哥德巴赫猜想的函数(调用judgePrime)=======*/ int proveGoldbach(int m){

} int main(){

}

printf(”n提示:输入一个偶数来验证哥德巴赫猜想,当输入数值=6;){

} int temp;printf(“Please enter a number:”);scanf(“%d”,&num);temp=proveGoldbach(num);if(temp==0)//当输入小于6或者不是偶数时结束 return 0;printf(“==================================”);if(m

} if(judgePrime(j)==1&&judgePrime(m-j)==1)//判断两数是否都等于质数 { } printf(“t%d = %d + %dn”,m,j,m-j);return 0;//判断是否大于等于6或者不是偶数 for(int j=2;j

题目三:编写一个求阶乘的函数,接着调用该函数实现组合的求解要求:

① 提示用户输入n和m的数值; ② 输出的 结果

#include /*=======阶乘函数=======*/ int fac(int n){

} /*=======组合函数=======*/ int combine(int m,int n){ } /*=======main函数=======*/ void main(){

int m,n;int res;printf(“n提示:这是求组合求和公式的函数,输入两个整数(分别为上标和下标)nn”);scanf(“%d%d”,&m,&n);if(m>n)//判断上标大于小标重新输入 goto loop;return fac(n)/(fac(n-m)*fac(m));int f;if(n

}res=combine(m,n);printf(“tResult is %dn”,res);

题目四:编写一个求矩阵中最大元素以及最小元素的函数selectMaxAndMin(),在main函数中调用该函数

要求:

最大值和最小值的输出操作,可以放在selectMaxAndMin()函数中

#include #define ROW 4//矩阵的行 #define COLUMN 4//矩阵的列

/*=======在矩阵中选择最大最小数的函数=======*/ void selectMaxAndMin(int arry[ROW][COLUMN])//用指针更方便 {

int tempMax,tempMin;if(arry[0][0]>arry[0][1])//赋初始值 {

} else {

} for(int i=0;i

}

} for(int j=0;j

} if(arry[i][j]>tempMax){ } if(arry[i][j]

} int mat[ROW][COLUMN];printf(“Please enter a %d X %d matrix:n”,ROW,COLUMN);for(int i=0;i

} selectMaxAndMin(mat);return 0;for(int j=0;j

题目五:编写一个编码原文的函数,对于给定的内容,按照敌方的规律对其进行编码

要求:

某日,我军某部截获了一份敌方电报,经过仔细分析后发现:该电文中所有的字母字符都是经过某种运算后得到的,然那些非字母字符则没有经过任何处理。例如,原文中的字符A对应电文中的字符E,原文中的字符b对应电文中的字符f,原文中的字符W对应电文中的字符A,原文中的字符!在电文中仍为!

#include #define SIZE 20

//定义大小 /*=======密码翻译的函数=======*/ char trans(char a){

} //主函数 int main(void){

printf(“请输入原文:nnn”);char str[SIZE];gets(str);printf(“nnn”);if((a>='a'&&a='A'&&a

} if(a>='w'||a>='W'){ } else { return a;} return a-22;return a+4;

}printf(“正在破解……nnn”);printf(“破译的原文是:”);for(int i=0;i

} printf(“n”);str[i]=trans(str[i]);if(str[i]=='')//判断是否结束 break;printf(“%c”,str[i]);

题目六:编写一个函数,求解输入矩阵的转置矩阵并输出

#include #define ROW 3//矩阵的行 #define COLUMN 4//矩阵的列 /*=======矩阵的输入函数=======*/ void matInput(int mat[][COLUMN]){

} /*=======原始矩阵的打印函数=======*/ for(int i=0;i

for(int j=0;j

} printf(“请输入矩阵元素 [%d][%d]=:”,i,j);scanf(“%d”,&mat[i][j]);

void matPrint(int mat[][COLUMN]){

} /*=======转置矩阵的打印函数=======*/ void matTrasPrint(int mat[][COLUMN]){

} /*=======main函数=======*/ int main(void){

} printf(“==================================”);printf(“请输入一个 %d X %d 的矩阵:n”,ROW,COLUMN);int mat[ROW][COLUMN];matInput(mat);printf(“==================================”);printf(“原始矩阵为:n”);matPrint(mat);printf(“==================================”);printf(“原始矩阵的转置矩阵为n”);matTrasPrint(mat);return 0;int arr[COLUMN][ROW];for(int i=0;i

} for(int j=0;j

} printf(“n”);arr[i][j]=mat[j][i];printf(“%3d”,arr[i][j]);for(int i=0;i

} for(int j=0;j

题目七:用户输入的字符串,以相反的顺序打印出来。

要求:利用递归函数调用形式

#include #define SIZE 20 /*=======相反输出字符串的函数=======*/ void reverse(char a[]){

int i=0;if(a[i]!=''){

} int main(void){

}printf(“t提示:输入一串字符以相反的顺序打印n”);char str[SIZE];gets(str);reverse(str);printf(“n”);return 0;

} else return;reverse(&a[i+1]);//递归调用 printf(“%c”,a[i]);

四、讨论

《C语言程序设计—函数—实验报告.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
C语言程序设计—函数—实验报告
点击下载文档
相关专题 c语言函数实验报告 实验报告 函数 语言程序设计 c语言函数实验报告 实验报告 函数 语言程序设计
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文