




已阅读5页,还剩69页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
安装Visual C +6.0下载请从群里下载Microsoft Visual Studio.rar。将下载的文件Microsoft Visual Studio.rar解压后即可使用。请直接运行文件“Microsoft Visual StudioCommonMSDev98BinMSDEV.EXE”实验一 认识C语言【实验目的】1熟悉C程序设计编程环境 Visual C +,掌握运行一个C程序设计的基本步骤,包括编辑、编译、连接和运行。编辑:编写源程序文件.c编译:生成目标文件.obj 连接:生成可执行文件.exe运行:执行.exe文件。2掌握C语言程序设计的基本框架,能够编写简单的C程序。3了解程序调试的思想,能找出并改正C程序中的语法错误。【实验内容】1-1 在磁盘上新建一个文件夹,用于存放C程序,文件夹的名字可以是学号,如 D:3050888。1-2 编程示例,在屏幕上显示一个短句“Hello World!”。源程序# include void main( ) printf(Hello World! n);运行结果Hello World!作为第一个实验,在Visual C+编程环境下,以上述C语言源程序为例,介绍运行一个C程序的基本步骤,请读者按照以下步骤操作。(1)启动VC+ 执行“开始”“程序”“Microsoft Visual Studio 6.0” “Microsoft Visual C+ 6.0”,进入VC+编程环境(如图1.1所示)。图1.1 VC+窗口(2)新建文件执行“文件/File”“新建/New”,单击“文件/Files”选项卡(如图1.2所示),先在“文件/File name”栏中输入test,把C源(程序)文件命名为test.cpp,在“目录/Location”框中选择你已经建立的文件夹,如,D:3050888,然后选中“C+ Sourse Files”,单击“确定”按钮,在D:3050888下就新建了文件test.cpp,并显示编辑窗口和信息窗口(如图1.3所示)。图1.2 新建文件思考:我们讲过C语言的源程序文件的扩展名为.c,可现在建立的文件名为.cpp,这可以编译执行吗?解答:vc+6.0是c和c+语言的编程环境,c+语言的扩展名为.cpp,并且c+语言完全包括的c语言的语法内容,所以在c+文件中写c语言的内容是可以编译的。如果想将源程序文件的扩展名改为.c,只需要在上图中文件一栏中填写test.c就可以了,如果只写test就是只写一个文件名的话扩展名会自动为.cpp,所以我们可以指定扩展名为.c就可以了。(3)编辑和保存在编辑窗口(如图1.3所示)中输入源程序,然后执行“文件/File”“保存/Save”或“文件/File”“另存为/Save As”,保存源文件。信息窗口编辑窗口图1.3 编辑源程序(4)编译执行“编译/Build”“编译/Compile”或Ctrl + F7(如图1.4所示),在“产生工作区”对话框中(如图1.5所示)选择“是/Y”,开始编译,并在信息窗口显示编译信息(如图1.6所示)。图1.4 编译源程序图1.5 产生一个工作区图1.6 编译正确图1.6信息窗口中出现的“test.obj - 0 error(s), 0 warning(s)”,表示编译正确,没有发现(语法)错误和警告,并生成了目标文件test.obj。请查看目录D:3050888Debug中是否有test.obj文件。F 如果显示有错误error(s),指程序中存在致命的错误,必须要改正;如果显示有警告warning(s),虽然不影响生成目标文件,但通常也应该改正。(5)连接执行“编译/Build”“构件/Build”或F7,也可用“重建全部/Rebuild All”,开始连接,并在信息窗口显示连接信息(如图1.7所示)。图1.7信息窗口中出现的“test.exe - 0 error(s), 0 warning(s)”表示连接成功,产生了可执行文件test.exe。操作完成请查看目录D:3050888Debug中是否有test.exe文件。图1.7 连接成功并产生运行文件(.exe)(6)运行执行“编译/Build”“执行/Execute”或Ctrl + F5(如图1.8所示),自动弹出运行窗口(如图1.9所示),显示运行结果“Hello World!”,其中“Press any key to continue”提示读者按任何键退出DOS窗口,返回到VC+编辑窗口。图1.8 运行程序图1.9 运行窗口也可以进入源文件的目录双击test.exe进行执行。(Window操作系统都是这样运行一个可执行的程序。(7)关闭程序工作区执行“文件/File”“关闭工作区/Close Workspace”(如图1.10所示),在出现的对话框(如图1.11所示)中选择“是/Y”,关闭工作区。图1.10 关闭程序工作区图1.11 关闭所有文档窗口(8)打开文件如果要再次打开C源文件,可以执行“文件/File”“打开/Open”,在文件夹D:3050888下选择文件test.cpp(9)查看C源文件、目标文件和可执行文件的存放位置经过编辑、编译、连接和运行后,在文件夹D:3050888(如图1.12所示)和D:3050888Debug(如图1.13所示)中存放着有关的文件,其中源文件test.cpp在文件夹D:3050888中,目标文件test.obj和可执行文件test.exe都在文件夹D3050888Debug中。图1.12 文件夹“D:3050888” 图1.13 文件夹“D:3050888debug” 1-5 调试示例,在屏幕上显示一个短句“Welcome to You!”。源程序(有错误的程序)# include void mian( ) printf(Welcome to You! n)运行结果(改正后程序的运行结果)Welcome to You!(1)按照实验内容1-2中介绍的步骤先关闭工作区(点击菜单Fileclose Wordspace),然后再参照上边的步骤创建源程序error1_1.cpp。(2)编译,执行“编译/Build”“编译/Compile”,信息窗口中显示编译出错信息(如图1.14所示)。(3)找出错误,在信息窗口中双击第一条出错信息,编辑窗口就会出现一个箭头指向程序出错的位置(如图1.14所示),一般在箭头的当前行或上一行,可以找到出错语句。图1.14中箭头指向第4行,出错信息指出Welcome是一个未定义的变量,但Welcome并不是变量,出错的原因是Welcome前少了一个双引号。图1.14 编译产生的错误信息(4)改正错误,在Welcome前加上双引号后,重新编译,信息窗口显示本次编译的出错信息,第一条出错信息是“missing ; before ”,双击该出错信息,箭头指向最后一行,出错信息指出在右大括弧 前少了分号。(5)再次改正错误,在 前补上一个分号后重新编译信息窗口显示编译正确(如图1.15所示)。图1.15 编译正确(6)连接,执行“编译/Build”“构件/Build”或F7。信息窗口显示连接出错信息(如图1.16所示)。仔细观察、分析后发现,主函数名main拼写错误,被误写为“mian”。图1.16 连接产生的错误信息(7)改正错误,把“mian”改为“main”后,重新连接,信息窗口显示连接正确(如图1.17所示)。图1.17 连接正确(8)运行,执行“编译/Build”“执行/Execute”或Ctrl + F5 ,自动弹出运行窗口(如图1.18所示),显示运行结果,与题目要求的结果一致,程序调试结束,读者按任意键返回。 图1.18 程序运行窗口1-6 改错,改正下列程序中的错误,在屏幕上显示以下3行信息。按照实验内容1-2中介绍的步骤先关闭工作区(点击菜单Fileclose Wordspace),然后再参照上边的步骤创建源程序error1_2.cpp* Welcome*源程序(有错误的程序)# include void mian( ) printf(*n); printf( Welcomen) printf(*n);实验二 常量【实验目的】1 学会使用字符常量、字符串常量、整型常量、实型常量、及符号常量2 学会使用转义字符、占位符3 学会使用常量之间的运算4 学会使用vc+6.0编程环境中的wordspace、project、files【实验内容】1 编写程序,使用printf输出以下内容:Hello!Welcome to China!1 2 3 4 5 6 7 8 93.1415933.141593 “” 说明及要求: 第一行要使用字符常量进行输出(使用字符的占位符%c)第二行要使用字符串常量(使用字符串的占位符%s) 第三行要使用整型常量,注意每个数字中间是空格。(使用整型的占位符%d) 第四行要使用实型常量,并且要用实型常量小数形式(使用实型的占位符%f)第五行要使用实型常量,并且要用实型常量指数形式(使用实型的占位符%f) 第六行输出两个单引号,并且要用字符常量(使用转义字符) 第七行输出两个双引号,并且要用字符串常量(使用转义字符)参考答案(请同学们将下面的程序补充完整输出第三行及后两行的内容):#includemain() printf(%c%c%c%c%c%cn,H,e,l,l,o,!); printf(%sn,Welcome to China!); printf(%fn,3.141593); printf(%fn,31.41593e-1);2 运行下边的程序,想想是为什么。#includemain() printf(A=%dn,A); printf(65=%cn,65); printf(B=%dn,A+1); printf(66=%cn,65+1);结论:字符型也是整型,并且字符可以于整型相互转换。通过%d、%c转换。根据教材的122页附录3练习字符和整型的转换。3 编写程序,使用printf输出字母A、的码值。输出结果为:A=65,B=66,C=67提示:字符型对应的占位符为%c,如果printf中使用%c则会输出A、这三个字母。大家都知道C语言中字符数据在内存中其实存储的是该字符对应的ASCII码的值,ASCII码值为整型,所以要想输出字符对应的ASCII码的值,printf中的占位符要用整型对应的占位符。4 编写程序使用printf输出以下内容:3.1415926758说明及要求:要使用实型常量输出,小数或指数形式不限制。(注意占位符%f的使用,显示小数位数问题)请参考P.17printf格式说明一节的内容,关于本程序的所用的知识请参考18页的第(3)。参考答案:#includemain() printf(%1.10fn,3.1415926758);请尝试练习教材第17页至第19页表.1到表2.8中的格式控制符。每个类型的格式控制符都要练习一下。5 将第一题中的后四行改为符号常量输出提示:符号常量使用方法:首先要先用#define 定义符号常量,定义格式为:#define 符号常量名称 常量值然后在printf中将原来常量的位置替换成符号常量名称即可。例如:要输出以下内容:100*3=300100/3=33我们把100定义成符号常量,名称为num。可以这样写程序:#include#define num 100main() printf(%d*3=%dn,num,num*3); printf(%d/3=%dn,num,num/3);定义符号常量的作用是,如果我们想得到另一个数乘以的结果、另一个数除以3的结果,我们就可以直接修改符号常量num 的值为另一个数就行了。比如我们想求200*3、200/3 的结果,上边的程序我们只需要将#define num 100改为#define num 200就行了。请同学们自己试试看。6 在第一题中尝试使用错误的占位符,看会出现什么问题例如:第四行占位符不用%f而用%d。试验完成后要得出一个结论! 7 学会使用算术运算符和算术表达式 先了解一下C语言的算术运算符和算术表达式。学习基本的算术运算符l 加法运算符“+”:加法运算符为双目运算符,即应有两个量参与加法运算。如4+8等。l 减法运算符“-”:减法运算符为双目运算符。但“-”也可作负值运算符,此时为单目运算符(只有一个量参加运算),如-5等。l 乘法运算符“*”:双目运算符。参与运算量均为整型时,结果也为整型,舍去小数。如果运算量中有一个是实型,则结果为实型。l 除法运算符“/”:双目运算符。参与运算量均为整型时,结果也为整型,舍去小数。如果运算量中有一个是实型,则结果为实型。l 求余运算符(又叫模运算符)“%”:双目运算。要求参与运算的量均为整型。 求余运算的结果等于两数相除后的余数。值的符号与被除数相同。例子:# include main() printf(%dn,100%3); 本例输出100除以3所得的余数1。学习算术表达式用算术运算符和括号将运算对象(也称操作数,变量、常量)连接起来的、符合C语法规则的式子。以下是算术表达式的例子:4+8 (5*2)3算术表达式算出的值称为该算术表达式的值,比如以上4+8这个表达式的值为12。看过上边基本算术运算符的规则后请编写运行以下的程序自己思考为什么输出是这样的:#includemain() printf(100*3=%dn,100*3); printf(100*3=%fn,100.0*3); printf(100/3=%dn,100/3); printf(100/3=%fn,100.0/3); printf(100/3=%1.2fn,100.0/3); printf(100%c3=%dn,%,100%3); printf(-100%c3=%dn,%,-100%3); printf(100%c-3=%dn,%,100%-3); 根据以要求编写程序使用printf输出以下算术表达式的值:1+2+3+41*2*3*41/2 (应输出0.5)1/3 (保留4位小数应输出0.3333)10%3-10%310%-3提示:注意占位符的正确使用,算术表达式求出的结果一定要和占位符的对应的类型匹配(注意:字符型也属于整型)%f中间可以加(整数1.整数2)例如:%2.1f、%4.2f整数表示显示数据的总宽度(包括:整数部分、小数点、小数部分的总位数),整数2表示显示数据的小数位数,如果整数1小于实际要输出的位数则按照小数点前整数部分实际的位数输出。如果整数1大于实际要输出的位数则将多余的位数在前边补0。例如:printf(100/3=%1.3fn,100.0/3); 由于%1.3f中的1比小数位数还小则按照小数点前整数部分实际的位数输出 输出:33.333printf(100/3=%7.3fn,100.0/3); 由于小数位数3加上小数点及两位整数的位数才6,%1.3f中的比6大1则要在前边补一个空格,输出: 33.333请同学们自行练习教材第17到19页的格式控制符的使用。8 编写程序实现求一个十进制数的八进制、十六进制,比如:13的八进制为015,十六进制为0xd,执行程序输出13=015=0xd。要求使用printf及占位符。并且要用符号常量,如下边符号常量要表示。提示:八进制的占位符为%o,十六进制占位符为%x,十进制的占位符为%d或%i八进制和十进制和十六进制可以互相转换,具体转换成什么进制完全由占位符决定。请参看第17页的表2.1、第19页表2.8可参考下边的例子进行编写。 例子:#include#define num 13main() printf(%d=%#o n,num,num);注意:printf(%d=%#o n,num,num);中的“#”号。看看去掉#和加上程序输出有什么区别。9 进一步学习Vc+6.0的编程环境。问题:现在我们调试一下c程序就是先将所有的工作关闭了然后再建立源文件、编译、连接生成.exe、执行。如果我们不关闭原来的工作区直接在里边建立源文件可以吗?试验步骤:我们在一个工作区中建立一个c源程序为ddd.c编译运行一切正常。我们在不关闭工作区的情况下再建立一个c源程序为eee.c,我们进行编译,可以正常输出eee.obj文件表明编译正常。我们再进行连接构建成exe文件就出错了。如下错误:提示内容显示main在ddd.obj中已经定义。可见这种方式不行。 学习工作区、工程、文件的使用点击菜单FileNew,系统弹出窗口:上边包括了Files(文件)、Projects(工程)、Workspaces(工作区)、other Documents(其它文档)工作区:我们要使用vc+6.0的编程环境首先必须要创建一个工作区,我们才能在这个工作区里边工作、编写程序。就算我们刚开始直接创建源程序文件当你编译时系统也会提示必须先创建一个工作。工程:工程是包括在工作区内的概念,工程是所有源程序文件的家,就好比一个图书管理系统这个软件,如果我们用vc+6.0开发这个软件那么该软件需要编写的所有文件都必须放在一个工程里边,并且一个工程里边只有一个main。现在我们知道为什么不能在一个工程里边建立两个都包含main的源程序文件了吧。文件:包括很多类型的文件,我们正在编写练习的就是C的源程序文件,文件必须包含在工程里边。下边我们可以按照由大到小的顺序分别创建工作区、工程、文件。第一步:创建一个计算机等级考试练习的工作区。选择Workspaces标签:按照下图内容填写:点击ok进入如下界面:这表明工作区创建成功查看盘的test目录内会有计算机等级考试练习的目录,并且目录内的文件为:第二步:创建工程:在上图中右键单击工作区的名称在出现的菜单中点击“Add New project to workspace”系统打开如下界面:在左边我们选择“Win32 Console Application”,右边上边的Project name一栏我们填写工程的名字:helloword。点击ok。点击Finish。点击“”。系统进入下一个界面:左边工作区下边多了一个工程。第三步:创建源文件我们选中要加入源文件的工程:点击vc+6.0的菜单FileNew我们选中“C+ Source File”,右边File一栏我们填写文件的名字main.c点击我们开始输入源程序内容。我们编译、运行程序。我们点击左边工程前边的加号:得出原来我们编写的源程序文件main.c在这里。查看目录D:test计算机等级考试练习helloword中就是main.c并且还有Debug目录。下边我们在同一个工作区中再创建一个工程。和上边我们创建工程的方法一样。工程的名字不要和第一个创建的工程名相同。第二个我们定为test2。按照上边的步骤创建工程完成:在左边就出现了两个工程。我们选择第二个工程按照上边的步骤创建文件:由于现在我们创建的文件和刚才我们创建的源程序文件不在同一个工程里边,所以文件名可以相同,我们都把它叫为main.c。输入源程序文件的内容。对于两个工程同时在一个工程区内,如果要编译、执行其中一个工程需要将该工程设置为当前选中工程。比如现在我们要编译执行第二工程,首先我们需要先选中该工程,然后右键单击,在出现的菜单中点击“Set as active Project”项就可以了。这时我们编译运行就是第二个工程。如果想编译运行第一个工程我们就在第一个工程右键单击“Set as active Project”。这样的话我们就可以在一个工作区内进行练习不用练习一个程序就关闭工作区,这样太麻烦了。我就是这样练习的,一个工作区可以建多个工程。需要运行哪个工程就将那个工程设置为“Set as active Project”实验三 变量【实验目的】1 学会使用字符变量、整型变量、浮点型(实型)变量的定义和赋值2 学会使用输入函数3 学会编写数学运算的程序【实验内容】1、 输出以下程序的结果:#include main()char letter1,letter2;letter1=letter2=A;letter2=letter1+1;letter2=letter1+;printf(%c,%cn,letter1,letter2);程序输出:B,A要求:在printf前边加一条语句,使程序输出为A,A,使程序输出B,B。用+或运算符实现。2、 编写程序实现以下内容。(该程序主要练习变量的定义、赋值操作。)定义一个字符变量,变量名为letter,将字母A赋给该变量然后输出该变量的值再给该变量赋值为字母B然后再输出该变量的值输出结果应该为:AB注意:输出结果为两行。提示:定义一个字符变量的方法为:char 字符变量名称;赋值的方法为:字符变量名称=变量值或算术运算表达式;输出变量的值可以使用printf。注意占位符要使用和变量类型一样的,比如变量类型为整型,则占位符就必须为%d或%i。可参考下边的例子进行编程:#includemain()char letter;letter=A; printf(%c n,letter);3、 编写程序实现如下要求定义两个整型变量num1、num2(请参考教材第4页第三节),分别给这两个整型变量赋个任意的初值,求这个两个整型变量的和并将它们的和存入num1中,并输出第一个变量 的值。4、 把下边的程序编写完整:#includemain()int number=1234;int n1,n2,n3,n4;/在这里添加代码(行数不限,可以再定义变量可以参考下边例子编写)通过使用算术运算表达式计算出number的个位、十位、百位、千位上的数值依次存入变量:n1,n2,n3,n4,最后程序将这四个数输出/./.printf(%d,%d,%d,%d ,n1,n2,n3,n4);例子(该例子实现功能是输出12的每一位上的数值):#includemain()int number=12;int n1,n2;n1= number/10;n2= number%10;printf(%d,%d,n1,n2);5、 把下边的程序编写完整:#includemain()double number=1234.567;/在这里添加代码(行数不限,可以再定义变量可以参考下边例子编写)通过使用算术运算表达式将number的值修改为1234.56,即小数点后只有两位小数。(注意:不要使用%7.2f)/./.printf(%lf , number);例子(该例子实现功能是修改number值,使其小数点后只有一位有效数字):#includemain()float number=12.34;int number_temp= number*10;number= (float)number_temp/10;或number= number_temp*1.0/10;printf(%f, number);6、 请编写教材第5页下边的程序并运行。说明:sizeof的作用是得到类型占内存的空间大小。如:第一行的sizeof(int) 得到int型在内存中占几个字节的空间。如果得到int占两个字节则说明:int的数据范围为-3276832767无符号int的范围为:065535如果得到int占四个字节则说明:int的数据范围为-21474836482147483647无符号int的范围为:04294967295下面以int所占四个字节为例,请同学们运行如下程序:#include main()int int_num=2147483647;unsigned int unsigned_int_num=4294967295;printf(%d ,int_num);printf(%u ,unsigned_int_num);printf(n);int_num=2147483647+1;unsigned_int_num=4294967295+1;/由于表达式结果超出基本整型的最大值2147483647所以输出的值不对,这称为溢出printf(%d ,int_num);/由于表达式结果超出无符号整型的最大值4294967295所以输出的值不对,这称为溢出printf(%u ,unsigned_int_num);注意上面程序中%u的用法。它是无符号整型数的占位符。结论:常量后面什么也不加的编译系统会默认为是基本整型常量。可在后面加或l来表示长整型常量。也可加UL或ul也可以表达无符号长整型常量。(LU两个字母可以交换位置,大小写不区分)7、 编写调试以下程序看看数据存储到内存中是怎么溢出的。#include main()short a=32767; printf(%d,a);程序输出:32767大家知道2个字节的数据在内存中存储的有符号数据的范围是:-32768到32767上边的程序如果改为:short a=32767+1;大家看看是不是输出327688?想想为什么?8、 下面程序的功能是输出整型变量num中的个位数、十位数、百位数的值,表修改程序的错误使之可以正确运行。注:“*found*”下边的代码有错误。说明:num1存放百位数,num2存放十位数,num3存放个位数#include main()int num=356;int num1=num/100;*found*int num2=(num1*100-num)/10;int num3=num-num1*100-num2*10;printf(“%d,%d,%d”,num1,num2,num3);9、 下面程序的功能是将num1和num2进行合并,比如:num1和num2分别为12和34,合并之后就是1234。就是将num1的十位数作为合并后数的千位数,个位数作为合并后数的百位数。Num2的十位数作为合并后数的十位数,个位数作为合并后数的个位数。注:“*found*”下边的代码有错误。#include main()int num;int num1=12;int num2=34;int num1_1=12/10;int num1_2=12%10;int num2_1=34/10;int num2_2=34%10;*found*num=num2_1*1000+num2_2*100+num1_1*10+num1_2;*found*printf(%d,%d,%f,num1,num2,num);printf(n);10、 下面程序的功能是将实型变量里的值进行四舍五入,保留两位小数。注:“*found*”下边的代码有错误。#include main()float num=12.345;int num_l=num*100;*found*num=num_l/100.0;printf(%f,num);11、 编写程序将整型变量num中的数倒序存储。比如:num中存储123,通过该程序要该变量的值改为321。实验四 函数【实验目的】1 学会使用常用的数学函数、库函数2 学会自定义函数【实验内容】1、 运行下面的程序尝试学习使用putchar 函数(字符输出函数)#includemain() char a=B,b=o,c=k; putchar(a);putchar(b);putchar(b);putchar(c);putchar(t); putchar(a);putchar(b); putchar(n); putchar(b);putchar(c); 运行程序输出:Book BoOk思考t表示什么意思?尝试修改程序使程序输出:Book Book ok编程要求只允许增加putchar语句。2、 通过运行程序尝试使用getchar函数(键盘输入函数)程序的功能:输入单个字符再将其输出到屏幕上。#includevoid main() char c; printf(input a charactern); c=getchar(); putchar(c);思考程序的后两行:c=getchar(); putchar(c); 怎么用一行表示。3、 我们学过在语言中想输出数据到显示器我们用printf,如果想从键盘输入数据到计算机中在C语言是使用scanf。例子:从键盘输入三个整数值,分别存入变量a、b、c中,然后将这三个变量的值输出到计算机显示器上。源程序如下:# include main() int a,b,c; printf(input a,b,cn); scanf(%d%d%d,&a,&b,&c); printf(a=%d,b=%d,c=%d,a,b,c);我们对以上程序进行编译运行。注意:输入a、b、c的三个值时,中间要用空格隔开,输入完成再按回车键结束输入。程序运行步骤如下:首先程序输出一行提示:input a,b,c(在第二行闪烁着光标)现在我们开始输入a 、b、c的值,我们分别输入1、2、,并且中间用空格分开三个值输入完毕了我们按键盘上的回车键。程序输出以下内容:对照以上的程序我们分析程序的运行原理。C语言中输入指令scanf的格式为:scanf(“格式控制字符串”,变量序列);例如:scanf(%d%d%d,&a,&b,&c);前边的“格式控制字符串”和printf中一样,也用到了%d这样的占位符后边的变量序列和前边的占位符是一一对应,有几个占位符就有几个变量名,并且每个变量名前边要加“&”符号,变量名之间用逗号分隔开。4、 编写程序输入三个小数1.1、 2.2、3.3 分别存入变量i、j、k中,并将这三个变量的值输出,仿照上边的例子编写。要求输出为:a=1.1,b=2.2,c=3.3提示:注意小数对应占位符的格式。小数形式的变量要用float定义而不是用int。另外关于printf中小数位数的控制。(参考C程序教材第页下边)5、 请将下边的程序补充完整,实现的功能是:求两个输入实数的和并输出到计算机显示器上。提示:使用语言的scanf输入指令从键盘输入两个实数(不是整数),并将输入的两个值存入到定义的两个变量中,然后再求出两个变量的值使用printf输出(printf可以输出两常量的算术运算结果同样可以输出两个变量的算术运算结果)。输出数据要求保留两位小数。关于保留两位小数,请参考C程序教材第1页例1.2和第18页表2.4。#include main()float num1,num2;scanf(%f%f,&num1,&num2);/请在这里补充printf(%f,num);6、 请将下面的程序编写完整实现如下功能:输入一个字母,要求输出该字母的下一个字母.例如:输入大写字母A, 程序会输出大写字母B输入小写字母a 程序会输出小写字母b.要求:运行时不要输入z这两个字母,因为它们都是最后一个。提示:一个字母就是一个字符,字符型其实就是整型也是可以进行加、减这些算术运算的。请参考实验二的第二题。#include main()char letter;printf(“请输入一个字母:”);scanf(%c,&letter);/请在这里补充printf(%cn, letter);7、 请将下面的程序编写完整实现如下功能:输入一个小写字母,要求输出该字母的大写字母.#include main()char letter;printf(“请输入一个小写字母:”);scanf(%c,&letter);/请在这里补充printf(%cn, letter);8、 求一个数的平方根。程序要求:输入一个实数,程序求出该数的平方根后进行输出。提示:C语言中求平方根属于数学运算,需要在程序的最开头将math.h该头文件包括进来。求平方根在C语言中使用sqrt(),比如:一个变量为的里边存储4的平方根,应该这样写:A=sqrt(4.5);这个是实型变量用float定义。例子:#include #include main()float num=4.5;num=sqrt(num);/该句求出num的平方根存入变量num中。printf(%f,num);参照上边的程序尝试用scanf给变量num赋值。完成本题的要求。9、 调试以下程序:#include void newline(void)printf(n);int main(void)printf(First Line.n);newline();printf(Second Line.n);return 0;执行结果是:First Line.Second Line.10、 运行下边的程序学习自定义函数,程序功能:输入两个整型数程序求出它的和并它们的和输出#include /函数功能:求两个数的和并将求的和值返回int sum(int x, int y) int z=x+y;return z;main() int a=2,b=3,c;c=sum(a,b);printf(“%d+%d=%d”,a,b,c);11、 请补充下边函数的内容。程序功能:输入一个小写字母将其转为大写字母并输出。#include /该函数的功能实现小写字母转为大写字母再返回char toupper(char letter)main()char letter;printf(“请输入一个小写字母:”);scanf(%c,&letter);letter=toupper(letter);printf(%cn, letter);12、 请补充下边函数的内容。程序功能:输入一个小写字母将其下一个小写字母转为大写字母并输出。#include /该函数的功能实现小写字母转为大写字母再返回char toupper(char letter)char nextletter(char letter) letter= letter+1;return letter;main()char letter;printf(“请输入一个小写字母:”);scanf(%c,&letter);letter= nextletter (letter);letter=toupper(letter);printf(%cn, letter);13、 修改下边程序的错误。下边程序的功能:输入两个实型数据,求出这两个数的和并输出。注:“*found*”下边的代码有错误。#include /该函数的功能实现求出两个实型数据的和再返回*found*int sum(float num1,float num2) return num1+ num2;main()float num1, num2,num3;printf(请输入两个小数:);*found*scanf(%f%f,num1,num2);num3= sum(num1,num2);*found*printf(%f+%f=%d,num1,num2,num3);14、 修改下边程序的错误。下边程序的功能:输入两个整型数据,求出这两个数的商并输出。注:“*found*”下边的代码有错误。#include /该函数的功能实现求出两个整型数据的商再返回*found*int div(int num1,num2) double num3=num1*1.0; return num3/num2;main()int num1, num2;double num3;printf(请输入两个3位数的整数:);*found*scanf(%d%d,num1,n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 制定家庭手机管理制度
- 外包餐厅服务管理制度
- 公司报废物品管理制度
- 公司作业车辆管理制度
- 公司客餐招待管理制度
- 公司小休息室管理制度
- 垃圾收集清运管理制度
- 山西公司考勤管理制度
- 公路员工晋升管理制度
- 园林附属设施管理制度
- xx市汽车客运站平面布局设计-交通港站与枢纽课程设计
- 2022-2023学年天津市和平区益中学校八年级(下)期末数学试卷(含解析)
- GB/T 4502-2023轿车轮胎性能室内试验方法
- 装饰公司劳务合同
- 基于STM32的四路抢答器课程设计说明书
- 2022年黑龙江高校毕业生三支一扶考试真题
- GA/T 2000.301-2022公安信息代码第301部分:资金查控措施类型代码
- DL-T 2209-2021 架空输电线路雷电防护导则
- 初二地生会考试题及答案
- YS/T 525-2009三硫化二锑
- GB/T 18838.5-2015涂覆涂料前钢材表面处理喷射清理用金属磨料的技术要求第5部分:钢丝切丸
评论
0/150
提交评论