《C语言实验指导书》第4版

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

C语言程序设计实验指导书(修订4)软件学院教师编著安徽电子信息职业技术学院软件学院2010年6月1日C语言程序设计实验指导书1目录实验1运行简单的C程序......................................................2实验2练习使用算术运算符..................................................5实验3使用输入、输出函数..................................................7实验4模拟ATM取款机界面................................................8实验5循环语句的使用——猜数字游戏............................10实验6一维数组的应用........................................................11实验7二维数组的应用........................................................13实验8函数参数的传递........................................................14实验9嵌套与递归调用的实现............................................15实验10结构体和共用体......................................................16实验11文件...........................................................................18课程设计:单链表的操作.......................................................20C语言程序设计实验指导书2实验1运行简单的C程序一.实训目的:1、熟悉TC运行环境2、练习简单C程序的编写3、熟练掌握C程序的上机运行步骤二.实训内容:1.实验要求:编程求37+29的值,熟悉TC运行环境2.分析与设计:编写一个main()函数,将数据37和29分别用变量保存,然后用另一个变量存放两个变量的和,最后将和变量的值输出。3.源代码:main(){inta,b,sum;a=37;b=29;sum=a+b;printf(“sum=%d”,sum);}在TC环境中输入上面的代码后,先编译、连接,再保存,然后再运行。具体操作步骤如下所示:(1)编译(2)连接C语言程序设计实验指导书3(3)保存F2(4)运行CTRL+F9(5)运行结果ALT+F5C语言程序设计实验指导书4按任意键返回注意:1、第(1)步和第(2)步可以合起来操作,使用快捷键F92、程序比较大时,最好边输入代码,边保存,以防止意外情况的发生。选做题:1.输出字符串main(){printf(“Cprogram\n”);printf(“HelloWorld!\n”);}2.已知圆的半径为5,求圆的面积和周长。#definePI3.14main(){intr=5;floats;s=PI*r*r;printf(“area=%f\n”,s);}3.求任意两个数中的最大值。运行时需要从键盘输入二个整数,以“,”号间隔。main(){inta,b,max;printf(“Inputtwonumbers:”);scanf(“%d,%d”,&a,&b);max=a;if(maxb)max=b;printf(“max=%d”,max);}C语言程序设计实验指导书5实验2练习使用算术运算符一.实训目的:1.练习使用基本类型的变量进行编程2.练习使用C的运算符二.实训内容:1.实验要求:熟练使用运算符(%,++,--)2.分析与设计:求余运算符要求两个操作数都必须是整数;++和--要看清是先使用还是先自增(减)3.源代码:程序1:取出一个三位整数的各个位,并输出main(){intx=123;charc1,c2,c3;c1=x%10;c2=x/10%10;c3=x/100;printf(“%d,%d,%d\n”,c3,c2,c1);}运行结果为:1,2,3程序2:练习自增和自减运算符的使用main(){intx=2,y,z;y=(++x)+(x++)+(++x);z=(x--)+(--x)+(x--);printf(“x=%d,y=%d,z=%d\n”,x,y,z);}运行结果:x=2,y=12,z=12选做题:一.分析下面程序运行结果产生的原因。1.main(){intx,y;charc;x=y=5;ch=’a’;printf(“%d,%d,%c”,x++,++y,ch);}2main(){floatm,n,k;k=(3.1,m=2.0+2.1);printf(“%f”,k);C语言程序设计实验指导书6n=(m=3.8,k);printf(“%f”,n);}3.main(){inta=2,b=1,c=1,d=6,e=9;b+=a;printf(“%d”,b);c*=a;printf(“%d”,c);d/=a;printf(“%d”,d);e%=a;printf(“%d”,e);}4.main(){inta1,a2;floatb,c;b=5.425;c=52.954;a1=(int)(b+c);a2=(int)b+(int)c;printf(“a1=%d,a2=%d”,a1,a2);}二.编程题1.求1+2+3+4+5+6+7+8+9+10的和。2.利用中间变量,实现两个变量的值互换。C语言程序设计实验指导书7实验3使用输入、输出函数一.实训目的:熟练使用格式输出函数printf()和格式输入函数scanf()二.实训内容:1.实验要求:格式输入函数scanf()和格式输出函数printf()的使用2.分析与设计:输入函数中的普通字符需要原样输入,并注意分隔符的使用;输出函数中的格式控制符和输出项数要一一对应。3.源代码:程序1:为使得a=1,b=2,c=‘A’,d=5.5,在键盘上如何输入?#includestdio.hmain(){inta,b;charc;floatd;scanf(“a=%db=%d”,&a,&b);scanf(“%c%e\n”,&c,&d);}程序在运行时,输入:a=1b=2A5.50程序2:判断下面程序的运行结果。main(){intx=3,y=2,z=1;printf(“%d,%d\n”,(++x,y++),z+2);}运行结果:2,3分析得到此结果的原因。选做题:1.输入一个小写字母,将其改写为大写字母后输出。2.设inta,b,c;要使得a=3;b=5;c=6;问该如何在键盘上输入?并用printf函数输出a,b,c的值。scanf(“%d,%d%d”,&a,&b,&c);3编程序输出下面的图形****************************************C语言程序设计实验指导书8实验4模拟ATM取款机界面一.实训目的:1.熟练掌握分支结构if语句及其嵌套2.掌握分析具体问题的方法二.实训内容:1.实验要求:利用if语句和scanf函数模拟简单的ATM取款机界面2.分析与设计:用户先输入密码,密码正确后,可以进行帐户的操作,如查询,取款等。3.源代码:#includestdio.hmain(){intpassword,op,number=0,count=1000,n=0;printf(pleaseinputpassword:);scanf(%d,&password);while(password!=1234)/*有三次输入密码的机会*/{n++;if(n==3){printf(youhaveinput3,cannotinputagain!\n);getch();return;}printf(passworderror!pleaseinputagain:);scanf(%d,&password);}loop:printf(\nwelcome!Pleasechoiceoneoperate:(1,2,3)\n);printf(1:count\n2:getmoney\n3:return\n);scanf(%d,&op);/*输入一种操作*/switch(op){case1:printf(\nyourcountis%d.\n,count);gotoloop;/*帐户查询*/case2:printf(\npleaseinputcountthatyouwanttoget:);scanf(%d,&number);if(numbercount||number0)printf(\nerror);else{printf(\nnow,youcantakemoney!);count-=number;}gotoloop;/*取款*/case3:break;/*返回*/default:printf(\noperateerror!);gotoloop;}}C语言程序设计实验指导书9选做题:1.从键盘输入学生成绩分数,输出对应的等级。(100---90分为A,75---89为B,60---74为C,小于60为D)2.从键盘输入一个字符,如果是小写字母,则输出“small”,如果是大写字母,则输出“big”,如果是数字,则输出“number”,其他字符则输出“other”3.根据输入的x,输出对应y的值。xx02x+10≤x1x2-5x≥1y=C语言程序设计实验指导书10实验5循环语句的使用——猜数字游戏一.实训目的:1.熟练掌握各种循环程序设计的方法2.利用循环结构解决一些实际问题二.实训内容:1.实验要求:先利用randomize()产生一个随机数种子,再利用随机函数random(100)产生的一个0~100之间的整数,进行猜数字游戏,最后根据猜的次数给出评语。2.分析与设计:利用循环,不断输入数字,与产生的随机数进行比较,直到猜中为止。3.源代码:#includestdlib.hmain(){intr,x,n=0;randomize();r=random(100);printf(“Pleaseinputanumber(0~100):”);scanf(“%d”,&x);n=1;while(x!=r){if(xr)printf(“\nbig,inputcontinue:”);if(xr)printf(“\nsmall,inputcontinue:”);scanf(“%d”,&x);n++;}if(n=5)printf(“\nverygood”);if(n5&&n=10)printf(“\ngood”);if(n10)printf(“\nnormal”);}选做题:1.编程:打印出所有的“水仙花数”。所谓水仙花数是指一个3位数,其各位数字的立方和等于该数本身。例如:153=13+53+33。2.编程:打印出1000以内所有的“完数”。所谓完数是指一个数恰好等于它的因子之和。例如:6的因子为1,2,3;而6=1+2+3,因此6是完数。要求:按下面格式输出:6Itsfactorsare1,2,33.编写程序输出下面图形*************************C语言程序设计实验指导书11实验6一维数组的应用一.实训目的:1.掌握一维数组的定义、赋值和输入输出方法2.熟练使用一维数组解决实际问题二.实训内容:1.实验要求:从键盘上输入任意10个数,将其按从小到大顺序排列;再输入一个数,将该数插入到数列中,不改变数列的排序规律。2.分析与设计:用一维数组保存输入的数据,然后选择一种排序方法(冒泡排序)进行排序,然后在输入新的数,找到该数在数列中的位置,把从该位置到最后的元素,依次后移一位,再将该数插入数列中。3.源代码:#defineN10print(i

1 / 23
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功