C语言程序设计实践指导书6.docx
- 文档编号:29745099
- 上传时间:2023-07-26
- 格式:DOCX
- 页数:23
- 大小:222.49KB
C语言程序设计实践指导书6.docx
《C语言程序设计实践指导书6.docx》由会员分享,可在线阅读,更多相关《C语言程序设计实践指导书6.docx(23页珍藏版)》请在冰豆网上搜索。
C语言程序设计实践指导书6
C语言程序设计实践上机指导书(试用版)
专业数据科学与大数据技术
班级数据191
学号2019520118
姓名杨韦垠
沈阳工程学院信息学院
实践成绩评价说明
1)上机前充分准备实践材料,对上机内容有程序草稿。
(10分)
2)独立完成实践任务,对实践过程非常清晰。
(30分)
3)认真理解知识点,能够与理论知识相结合。
(10分)
4)在机房遵守上机守则,接受实践指导教师的监督与管理。
(20分)
5)认真填写实践指导书,写出实践小结。
(10分)
6)在实践中具备一定的创新思想,能够主动与指导教师探讨。
(5分)
7)加大实践工作量,主动完成实践指导书中的选做题目。
(5分)
8)掌握程序调试的方法,认真完成程序调试工作,使程序能够运行(10分)。
上机六函数程序设计
一、目的
1.熟悉掌握定义函数的方法。
2.熟悉掌握函数实参与形参的对应关系,以及“值传递”的方式。
二、要求:
1.在上课之前,每一个同学必须将题目、程序编写完毕,做好充分的准备。
2.所有环节均由每位同学独立完成,严禁抄袭他人结果。
三、步骤和内容
1、完善程序,体验菜单的实现,并将程序补充完整。
//*******************************************************************
//程序名称:
Menu**
//程序功能:
这是一个菜单显示及处理的示例程序,用于学生理解菜单**
//实现以及其处理过程,本示例程序可用于沈阳工程学院教**
//学以及学生使用C语言编程时,引用菜单的编程参考。
**
//作者:
信息学院张欣**
//版本号码:
V1.00**
//最后修改日期:
公元2015年11月3日**
//特别鸣谢:
无**
//*******************************************************************
//这是程序的第一部分,宏使用部分,通常引用头文件、编译选项以及常量定义。
#include
#include
//这是程序的第二部分,通常用于全局数据类型、变量、函数声明。
此程序只包含
//函数声明部分
//函数声明部分。
这些函数没一一解释,并省略了函数的参数,并且,函数返回类
//型均定义为了整型。
在具体使用时,可根据应用场景的不同,进行修改。
voidShowMenu();/*显示菜单声明*/
intMenu0();/*菜单功能项0*/
intMenu1();/*菜单功能项1*/
intMenu2();/*菜单功能项2*/
//其它的需要自己补齐
intMenu13();/*菜单功能项13*/
intMenu14();/*菜单功能项14*/
voidOtherCommFun();/*其它通用函数*/
//主函数实现
intmain()
{
intMenuID;
while
(1)
{
OtherCommFun();
ShowMenu();
scanf("%d",&MenuID);
if(MenuID>=0&&MenuID<=14)
{
switch(MenuID)
{
case1:
Menu1();//菜单功能1
break;
case2:
Menu2();//菜单功能2
break;
//其它的需要自己补齐
case13:
Menu13();//菜单功能13
break;
case14:
Menu14();//菜单功能14
break;
case0:
Menu0();//退出
exit
(1);
}
printf("\n\n>>PleaseChooseAnotherFunction!
\n");
}
else
{
printf("\n\n>>YouEnteredWrongFunction,PleaseTryAgain!
\n");
system("pause");
}
}
system("pause");
return0;
}
//ShowMenuFunctiom
2.输入如下代码,并/体验函数作用
1)编译、连接、和运行程序。
程序运行后,观查屏幕显示结果。
2)自己分析程序的功能,试着写出一个能实现将两数相乘的函数,并在主函数中调用测试
3、编写函数及主程序:
1)编写一个函数,求两个数中的最大值。
2)编写一个函数,求N个数中的最大值。
3)编写一个函数,求N!
。
4)编写一个函数,求二维数组中的最大值。
4、编写函数,实现两个任意数组的转置计算,数组的输入与输出,并在主函数中调用。
其中,要求分别输出原始数组及转置数组的内容。
四、思考题
1)有参函数于无参函数的区别?
2)分析C程序的基本结构。
五、结果分析
第一题
(1)代码
#include
#include
voidShowMenu();
intMenu0();
intMenu1();
intMenu2();
intMenu3();
intMenu4();
intMenu5();
intMenu6();
intMenu7();
intMenu8();
intMenu9();
intMenu10();
intMenu11();
intMenu12();
intMenu13();
intMenu14();
voidOtherCommFun();
intmain()
{
intMenuID;
while
(1)
{
OtherCommFun();
ShowMenu();
scanf("%d",&MenuID);
if(MenuID>=0&&MenuID<=14)
{
switch(MenuID)
{
case1:
Menu1();//菜单功能1
break;
case2:
Menu2();//菜单功能intMenu1();
break;
case3:
Menu3();//菜单功能13
break;
case4:
Menu4();//菜单功能13
break;
case5:
Menu5();//菜单功能13
break;
case6:
Menu6();//菜单功能13
break;
case7:
Menu7();//菜单功能13
break;
case8:
Menu8();//菜单功能13
break;
case9:
Menu9();//菜单功能13
break;
case10:
Menu10();//菜单功能13
break;
case11:
Menu11();//菜单功能13
break;
case12:
Menu12();//菜单功能13
break;
case13:
Menu13();//菜单功能13
break;
case14:
Menu14();//菜单功能14
break;
case0:
Menu0();//退出
exit
(1);
}
printf("\n\n>>PleaseChooseAnotherFunction!
\n");
}
else
{
printf("\n\n>>YouEnteredWrongFunction,PleaseTryAgain!
\n");
system("pause");
}
}
system("pause");
return0;
}
voidShowMenu()
{
system("cls");
printf(">>******welcometoMenuDemosystem*******<<\n");
printf(">>*1.Menu1.Press1*\n");
printf(">>*2.Menu2.Press1*\n");
printf(">>*1.Menu3.Press1*\n");
printf(">>*1.Menu4.Press1*\n");
printf(">>*1.Menu5.Press1*\n");
printf(">>*1.Menu6.Press1*\n");
printf(">>*1.Menu7.Press1*\n");
printf(">>*1.Menu8.Press1*\n");
printf(">>*1.Menu9.Press1*\n");
printf(">>*1.Menu10.Press1*\n");
printf(">>*1.Menu11.Press1*\n");
printf(">>*1.Menu12.Press1*\n");
printf(">>*1.Menu13.Press1*\n");
printf(">>*1.Menu14.Press1*\n");
printf(">>*0.Exit,Press0*\n");
printf(">>******************************************\n");
printf(">>*Selected:
");
printf("%d--%d",0,14);
}
intMenu0()
{
intRetumVal=0;
printf("YouChooseItem0,ProgrammWillBeClose!
\n");
system("pause");
returnRetumVal;
}
intMenu1()
{
intRetumVal=0;
printf("YouChooseItem1,CalledMenu1Function!
\n");
system("pause");
returnRetumVal;
}
intMenu2()
{
intRetumVal=0;
printf("YouChooseItem2,CalledMenu2Function!
\n");
system("pause");
returnRetumVal;
}
intMenu3()
{
intRetumVal=0;
printf("YouChooseItem3,CalledMenu3Function!
\n");
system("pause");
returnRetumVal;
}
intMenu4()
{
intRetumVal=0;
printf("YouChooseItem4,CalledMenu4Function!
\n");
system("pause");
returnRetumVal;
}
intMenu5()
{
intRetumVal=0;
printf("YouChooseItem5,CalledMenu5Function!
\n");
system("pause");
returnRetumVal;
}
intMenu6()
{
intRetumVal=0;
printf("YouChooseItem6,CalledMenu6Function!
\n");
system("pause");
returnRetumVal;
}
intMenu7()
{
intRetumVal=0;
printf("YouChooseItem7,CalledMenu7Function!
\n");
system("pause");
returnRetumVal;
}
intMenu8()
{
intRetumVal=0;
printf("YouChooseItem8,CalledMenu8Function!
\n");
system("pause");
returnRetumVal;
}
intMenu9()
{
intRetumVal=0;
printf("YouChooseItem9,CalledMenu9Function!
\n");
system("pause");
returnRetumVal;
}
intMenu10()
{
intRetumVal=0;
printf("YouChooseItem10,CalledMenu10Function!
\n");
system("pause");
returnRetumVal;
}
intMenu11()
{
intRetumVal=0;
printf("YouChooseItem11,CalledMenu11Function!
\n");
system("pause");
returnRetumVal;
}
intMenu12()
{
intRetumVal=0;
printf("YouChooseItem12,CalledMenu12Function!
\n");
system("pause");
returnRetumVal;
}
intMenu13()
{
intRetumVal=0;
printf("YouChooseItem13,CalledMenu13Function!
\n");
system("pause");
returnRetumVal;
}
intMenu14()
{
intRetumVal=0;
printf("YouChooseItem14,CalledMenu14Function!
\n");
system("pause");
returnRetumVal;
}
voidOtherCommFun()
{
printf(">>PressAnyToEnterMenuSystem.......\n");
getchar();
}
(2)运行截图
(3)结果分析:
程序运行正确。
第二题
(1)代码
#include
voidmain()
{
intsum(intx,inty);
inta,b,s;
scanf("%d,%d",&a,&b);
s=sum(a,b);
printf("thesumis%d\n",s);
}
intsum(intx,inty)
{
intz;
z=x+y;
returnz;
}
#include
voidmain()
{
intcheng(intx,inty);
inta,b,s;
scanf("%d,%d",&a,&b);
s=cheng(a,b);
printf("theansweris%d\n",s);
}
intcheng(intx,inty)
{
intz;
z=x*y;
returnz;
}
运行截图:
第三题
1
代码
#include
max_2(intx,inty);
intmain()
{
inta,b;
printf("请输入两个数:
");
scanf("%d%d",&a,&b);
printf("最大值:
%d",max_2(a,b));
return0;
}
intmax_2(intx,inty)
{
return(x>y?
x:
y);
}
运行截图
结果分析:
程序运行正确
2
代码
#include
max(intd[],intn);
intmain()
{
intn,i;
intd[100];
printf("请输入求多少个数的最大值:
");
scanf("%d",&n);
for(i=0;i scanf("%d",&d[i]); printf("最大值: %d",max(d,n)); return0; } intmax(intd[],intn) { intmax=d[0];inti; for(i=1;i { if(d[i]>max) max=d[i]; } returnmax; } 3 #include intjc(intn); intmain() { inta; printf("请输入一个数求阶乘: "); scanf("%d",&a); printf("这个数的阶乘是: "); printf("%d",jc(a)); return0; } intjc(intn) { intm=1,i; for(i=1;i<=n;i++) m=m*i; returnm; } 4 代码 #include max_sz(inta[][3]); intmain() { inti,j,a[3][3]; printf("请输入数值: \n"); for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d",&a[i][j]); for(i=0;i<3;i++) {for(j=0;j<3;j++) {printf("%3d",a[i][j]);} printf("\n");} printf("最大值为: %d",max_sz(a)); return0; } intmax_sz(inta[][3]) { intmax=a[0][0],i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) if(a[i][j]>max) max=a[i][j]; return(max); } 结果分析: 程序运行正确。 第四题 1)代码: #include #defineN3 #defineM3 voidscanf_a(inta[N][M]); voidzz_a(inta[N][M]); voidprintf_a(inta[N][M]); intmain() { inti,j,a[N][M]; printf("请输入数值: \n"); scanf_a(a); printf("输入的数组为: \n"); printf_a(a); zz_a(a); printf("转置的数组为: \n"); printf_a(a); return0; } voidzz_a(inta[N][M]) { inti,j,t; for(i=0;i for(j=i+1;j { t=a[i][j]; a[i][j]=a[j][i]; a[j][i]=t; } } voidprintf_a(inta[N][M]) { inti,j; for(i=0;i {for(j=0;j {printf("%3d",a[i][j]);} printf("\n");} } voidscanf_a(inta[N][M]) { inti,j; for(i=0;i for(j=0;j scanf("%d",&a[i][j]); } 2)运行截图 3)结果分析: 程序运行正确. 六、指导教师评阅成绩
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 实践 指导书
![提示](https://static.bdocx.com/images/bang_tan.gif)