您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > C语言程序设计练习题(答案)
1.1上机实训项目实验1实验步骤1、进入VC环境从“开始”→“程序”→“MicrosoftVisualStudio6.0”→“MicrosoftVisualC++6.0”,这时进入VC集成环境的主菜单窗口,屏幕显示如图1_1所示。图1-1VC集成环境的主菜单窗口2、VC环境下C程序的编辑、连接和运行(1)新建一个源程序①在VC环境中选择“文件”菜单,然后单击“新建”菜单项。如图1-2所示图1-2选择新建②在弹出的新建对话框中设置好相应的内容,如图2-2所示。要事先准备好保存文件的目录,例d:\lx目录。在图1-3中“文件”一栏的源程序文件的扩展名一定要输入C语言程序的扩展名“.c”。设置好后,单击“OK”,就回到了VC++的编辑界面,即将进行输入和编辑的源程序文件example.c文件存放在D盘的LX目录下。图1-3新建对话框的设置③在图1-4的工作区中,输入源程序2.设置源程序的文件名,扩展名一定要为“.c”且一定要输入扩展名1.单击该处3.设置存放目录图1-4输入、编辑源程序④输入源程序文件后可在主菜单栏中选择“文件”(FILE),并在其下拉菜单中选择“保存”(SAVE),如图1-5所示。图1-5保存源程序⑤源程序的编译如图2-6所示,单击主菜单的“编译”(Build),在其下拉菜单中选择“编译example.c”(Compileexample.c),或者单击工具栏上的“编译”按钮,如图1-6所示。在单击“编译”后,屏幕上会出现一个如图1-7所示的对话框。内容是“Thisbuildcommandrequiresanactiveprojectworksapce,Wouldyouliketocreateadefaultprojectworksapce?”,要创建一个默认的项目工作区,单击“是(Yes)”,表示同意,将开始编译;单击“No”,表示不同意,将取消编译。此处选择“是”。图1-6编译源程序图1-7要求创建一个工作区⑥编译完成后将如图1-8所示,此时注意编译窗口中的信息,如果有编译错误,将要对源程序进行修改,然后再重新编译,直到没有错误为止。从该处进入编译或者从该处进入编译图1-8编译信息⑦编译没有错误,完成并生成obj文件后,就可进入程序的连接了。连接的目的是将程序和系统提供的资源(如函数库、头文件等)建立连接,真正生成可以执行的程序文件。如图1-9所示,单击主菜单的“编译”(Build),在其下拉菜单中选择“构建example.exe”(buildexample.exe),或者单击工具栏上的“构建”按钮。执行连接后,将在调试窗口中显示连接的信息,如图1-10所示,如果连接有错误,将修改源程序,然后再编译、连接,直至没有错误为止。注意此处的obj文件或单击此处图1-9程序的连接图1-10连接后的信息⑧程序的执行完成了编译、连接后,就生成了可执行程序文件,些时该程序可执行了。如图1-11所示,单击主菜单的“编译”(Build),在其下拉菜单中选择“执行example.exe”(Executeexample.exe),或者单击工具栏上的“执行”按钮。执行后,将出现图1-12所示的结果。图1-11执行程序注意:此处生成的.exe文件或单击此处图1-12执行的结果实验2程序中包含三处错误,分别为:(1)Int应为int;(2)“sum=25+30”后缺少“;”;(3)缺少“return0;”实验3提示:要完成题目任务,一种方法是每一行调用一个printf函数输出,另一种方法是只调用一个printf函数输出。代码分别如下:(1)#includestdio.hintmain(void){printf(ThisismyfirstCprogram.\n);printf(AndprogramminginCisevenmorefun.\n);return0;}(2)#includestdio.hintmain(void){printf(ThisismyfirstCprogram.\nAndprogramminginCisevenmorefun.\n);return0;}实验4(1)计算33+56的和。解题思路:将例1.2中变量值改为33与56代码如下:#includestdio.hintmain(void){intvalue1,value2,sum;value1=33;value2=56;sum=value1+value2;printf(“%d+%d=%d\n”,value1,value2,sum);}(2)计算1+2+3+4+5解题思路:可以分别建立五个变量value1,value2,value3,value4,value5,赋值后计算value1+value2+value3+value4+value5,代码如下:#includestdio.hintmain(void){intvalue1,value2,value3,value4,value5,sum;value1=1;value2=2;value3=3;value4=4;value5=5;sum=value1+value2+value3+value4+value5;printf(“%d+%d+%d+%d+%d=%d\n”,value1,value2,value3,value4,value5,sum);}实验5解题思路:根据摄氏度与华氏温度转换公式进行转换,代码如下:#includestdio.hintmain(){floatf,c;f=27.0;c=(f-32)/1.8;printf(f=%f\nc=%f\n,f,c);return0;}1.2课后实训项目一、选择题1.C;2.D;3.A;4.C;5.A二、填空题1.main函数2.;3.编译三、分析下面程序,写出运行结果1.Theresultis952.wearestudents.IbegintostudyClanguage.四、找出下面程序中的所有语法错误,然后在计算机上运行输出正确结果。1.(1)Void应为void;(2)INT应为int;(3)“/*COMPUTERESULT”后缺少“*/”;(4)“printf(Theansweris%i\nsum);”应为“printf(Theansweris%d\n,sum);”2.(1)缺少预处理指令#includestdio.h;(2)没有声明value1,value2。3.(1)缺少main函数#includestdio.h;(2)没有对value1,value2进行声明;(3)输出语句中“Thesumofvalue1andvalue2is%d\n”缺少双引号;(4)函数体应由{}括起来。2.1上机实训项目实验1解题思路:根据运行结果,了解各种数据类型在内存所占用空间的大小,运行结果如下:intis4Bcharis1Blongintis4Bunsignedintis4Bfloatis4Bdoubleis8B实验2解题思路:根据例子,分析VC++6.0短整数、字符型和float型数据的范围,运行结果如下:s=32767c=127f=3.1234e+038s=-32768c=-128f=1.#INF(越界)通过程序运行结果可知:VC++6.0短整数范围-32768~32767;字符型范围-128~127;float型范围:0以及-3.4*10-38~3.4*1038实验3解题思路:错误1“j=++3;”应为“j=++i;”。++与—运算符只能用于变量,不能用于常量或者表达式,如5++或者(a+b)++都是不合法的。错误2“k=5.0%2;”应为“k=5%2;”。%运算符要求参加运算的对象为整数,结果也是整数。实验4解题思路,代码如下:#includestdio.hintmain(){inta=3,b=4,c=5;doublex=1.2,y=2.4,z=-3.6;longintu=51274,n=128765;charc1='a',c2='b';printf(a=%db=%dc=%d\n,a,b,c);printf(x=%7.6fy=%7.6fz=%7.6f\n,x,y,z);printf(x+y=%3.2fy+z=%3.2fz+x=%3.2f\n,x+y,y+z,z+x);printf(u=%dn=%d\n,u,n);printf(c1='%c'or%d\n,c1,c1);printf(c2='%c'or%d\n,c2,c2);return0;}实验5错误:“average=1/2*(96+55);”应改为“average=1.0/2.0*(96+55);”解题思路:两个整数相除的结果是整数,需要改为两个实数相除。2.2课后实训项目一、选择题1)C以0开头的数字是8进制数字,但是8进制数字里面是没有8的(满8进位),所以出错;2)C;3)D;4)D;5)D;6)B;m为(n*100+0.5)取整数部分,相当于四舍五入;7)A;8)C;9)BA赋值表达式,Cy=y++=5,在C语言++,--都不能位于“=”左边,D强制类型转换;10)Bx=x+x-(x-x);11)A;12)C;13)D二、填空题1)标识符;2)变量;3)整型、字符型、长双精度型;4)字母、数字、下划线;5)4B;6)f;7)pow(e,x*x+y*y)*(1/fabs(x-y));8)3.5三、分析下面程序,写出运行结果1.i=2,j=2i=2,j=32.119,w97,a3.24,6833.456000,53400.0000004.220.0000005.-6四、找出下面程序中的所有语法错误,然后在计算机上运行输出正确结果。1.#includestdio.hintmain(void){floata=5,b=3;错误:应为inta=5,b=3;printf(a%%b=%d\n,a%b);return0;}运行结果:a%b=22.#includestdio.hintmian()错误1:main{charc=’China’;错误2;将字符串赋给字符变量printf(‘c=%c\n’,c);错误3:双引号Return0;错误4:return首字母小写}运行结果c=C3.#includestdio.hintmain(){inta,b,c;a=2;b=3;C=a+b;错误:C未定义printf(“%d+%d=%d\n”,a,b,c);return0;}运行结果:2+3=5五、程序设计题1.解题思路:需要知道三角形求面积公式s=底*高*0.5,根据公式进行编程,代码如下:#includestdio.hintmain(){doublea,b,c;a=5.0;b=6.0;c=a*b/2;printf(areais%f,c);return0;}2.解题思路:知道根据半径r求圆形周长公式l=2πr以及面积公式S=πr2,代码如下:#includestdio.h#definePI3.1416intmain(){doublea,area,length;a=5.0;area=PI*a*a;length=2*PI*a;printf(areais%fandlengthis%f\n,area,length);return0;}3.解题思路:已知边长a,正方形求面积公式s=a2,代码如下:#includestdio.hintmain(){doublea,area;a=6.0;area=a*a;printf(areais%f\n,area);return0;}4.解题思路:已知圆柱体的底面半径a,高h,圆柱体体积c=πr2h,代码如下:#includestdio.h#definePI3.1416intmain(){doublea,h,cube;a=6.0;h=10.0;cube=PI*a*a*h;printf(cubeis%f\n,cube);return0;}3.1上机实训项目实验11略2.答:输出为ab,此时c1=‘a’,c2=‘’,c3=‘b’3.答:输出为ab此时c1
本文标题:C语言程序设计练习题(答案)
链接地址:https://www.777doc.com/doc-2908287 .html