《C语言程序设计》实验指导书答案.docx
《《C语言程序设计》实验指导书答案.docx》由会员分享,可在线阅读,更多相关《《C语言程序设计》实验指导书答案.docx(46页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、实验一(第 1 章实验)实验目的:1. 掌握运行C 语言程序的全过程。2. 熟悉编译环境Visual C+或者 Dev C+或者Turbo C2.0/3.0。3. 初步熟悉C 语言程序的语法规定。4. 了解简单函数的使用方法。实验内容:1. 编程且上机运行:求 3 个整数的和。2. 编程且上机运行:求 2 个数的和、差、积和商。3. 编程且上机运行:输入 3 个数,求最大值。4. 编程且上机运行:输入圆的半径,求圆的面积和周长。5. 在屏幕上输出:“hello world!”6. 输入并编辑本章中给出的 C 程序例子,在自己用的环境中形成一个 C 语言源程序文件;对这个源程序进行加工,得到对应
2、的可执行程序,看一看它的效果。实验结果:1.#include #include main( ) int i,j,k;printf(input i,j,k:);/输入整数数据,以半角逗号间隔,比如:1,2,3 scanf(%d,%d,%d,&i,&j,&k);/不能缺少地址符号“&” printf(%d+%d+%d=%dn,i,j,k,i+j+k);system(Pause);2.#include #include main( ) int i,j;printf(input i,j(not 0):);/输入整数数据,以半角逗号间隔,j 不为 0,因为做除数scanf(%d,%d,%d,&i,&j)
3、;/ 不 能 缺 少 地 址 符 号 “&” printf(%d+%d=%dn,i,j,i+j);printf(%d-%d=%dn,i,j,i-j); printf(%d*%d=%dn,i,j,i*j); printf(%d/%d=%dn,i,j,i/j);system(Pause);3. #include #include main( )int i,j,k;printf(input i,j,k:);/输入整数数据,以半角逗号间隔scanf(%d,%d,%d,&i,&j,&k);/不能缺少地址符号“&” if(ij)if(jk) printf(max:%d,i); else if(ik) pr
4、intf(max:%d,i); elseprintf(max:%d,k);elseif(jk)printf(max:%d,k); elseprintf(max:%d,j);system(Pause);4. #include #include #define pi 3.14 main( )float r; printf(input r:);scanf(%f,&r);/不能缺少地址符号“&”printf(circle area is:%6.2f,pi*r*r);system(Pause);5.#include #include #define pi 3.14 main( )printf(hello
5、 world!);system(Pause);6. 略实验二(第 3 章实验一)实验目的:理解 C 语言的类型系统。实验内容:写程序测试数据 2 在类型 char,int,unsigned int,long int,unsigned long int中存储情况。实验过程:实验结果:参见各种类型的存储实现描述。#include #include #include main( ) char c=-2;/1 int i=-2;/4unsigned int ui=-2;/4 long int li=-2;/4unsigned long int uli=-2;/4 printf(%dn,sizeof(c
6、har); printf(%dn,sizeof(int); printf(%dn,sizeof(unsigned int); printf(%dn,sizeof(long int); printf(%dn,sizeof(unsigned long int); printf(%c,%d,%u,%ld,%lu,i,i,i,i,i);system(Pause);实验二(第 3 章实验二)实验目的:了解混合类型计算中类型的转换规则。实验内容: 写程序测试多种类型数据一起运算时类型的转换及表达式结果的类型。注意unsigned int 和 int 数据运算时类型转换的方向。实验过程:/* 类型转换问题*
7、 试问下面两个表达式等价吗?*/#include #include int main() unsigned int ui,uj;ui = 1;uj = 2;if (ui uj)printf(n%u %u is true !n, ui, uj); elseprintf(n%u %u is false !n, ui, uj); if (ui - uj 0)printf(n%u - %u 0 is true !n, ui, uj); elseprintf(n%u - %u 0 is false !n, ui, uj); system(pause);return 0;实验结果:不等价。结果如下:1 2
8、 is true !1 - 2 0 is false !原因是 1-2=-1,-1 在 unsigned int 中的表示为3123157011111111111111111111111111111111实验二(第 3 章实验三)实验目的:理解数据溢出现象。实验内容:写程序测试数据溢出,注意分别在16 环境和 32 环境中测试。实验过程:实验结果:参见【例 3.3】。实验三(第 3 章实验四)实验目的:char 的符号问题。实验内容:写程序测试你所用的 C 语言编译器 char 符号问题的处理方案。实验过程:/* 这个程序验证编译器对 char 的解决方案,是有符号,还是无符号*/#inclu
9、de #include int main()char c = -1; int k;k = c;/* k = ? */ if (k = 255)printf(The char is unsigned char.n); elseprintf(The char is signed char.n); printf(k = %d, %x, k, k); system(pause);return 0;实验结果:TC2.0 和 DevC+中 char 是有符号的实验三(第 3 章实验五)实验目的:自增和自减运算符。实验内容:写程序测试+、- 运算符。实验过程:main()实验结果:int i=3; prin
10、tf(i=%dn,i+); printf(i=%dn,i); printf(i=%dn,+i); printf(i=%dn,i);i=3 i=4 i=5 i=5实验三(第 3 章实验六)实验目的:理解输入输出函数。 1掌握输入输出函数的使用方法。2. 掌握格式字符的使用方法。3. 掌握不同数制间使用格式字符转换数据的方法。实验内容:用 getchar、putchar、printf、scanf 函数实现各种数据的输入和输出。实验过程:实验结果:例如:/用 getchar、putchar、printf、scanf 函数实现各种数据的输入和输出。 #include #include main( )p
11、rintf(input a char c:); char c=getchar(); putchar(c);int i;printf(ninput a integer:); scanf(%d,&i);printf(i=%dn,i);printf(c=%cn,c);printf(type chars size is %dn,sizeof(char);/1 printf(type ints size is %dn,sizeof(int);/4 system(Pause);实验四(第 4 章实验)实验目的:1. 学会使用逻辑运算符和逻辑表达式;2. 熟练掌握if 语句和switch 语句。实验内容:1
12、. 从键盘输入三个整数a,b,c,输出其中最大的数。2. 求方程ax2+bx+c=0 的根,其中a,b,c 由键盘输入。有以下几种情况: a=0,不是二次方程; b2-4ac=0,有两个相等的实根; b2-4ac0,有两个不等的实根; b2-4ac10)写一程序,输入整数X,输出Y 的值。4. 给一百分制成绩,要求输出成绩等级A、B、C、D、E。90 分以上为A, 80-89 分为B,70-79 分为C,60-69 分为D,60 分以下为E。5. 企业发放的奖金根据利润提成。利润(B)低于或等于 10 万元时,奖金可提 10%; 利润高于 10 万元,低于20 万元时,低于10 万元的部分按
13、10%提成,高于10 万元的部分可提成 7.5%;200000B400000 时,高于 20 万元的部分按 5%提成;400000B600000 时,高于 40 万元的部分按 3%提成;600000B1000000 时,高于 60 万元的部分按 1.5%提成;B1000000 时,高于100 万元的部分按 1%提成。从键盘输入当月利润B,求应发放奖金总额。6. 从键盘任意输入一个不多于五位的正整数, 求它是几位数; 分别输出每一个数字; 按逆序输出各位数字,例如原数为135,应输出 531。实验过程:实验结果:1. 见第三版第五章作业 5.42. 见第三版教材 108 页3. 见第三版第五章作
14、业 5.54. 见第三版第五章作业 5.65. 见第三版第五章作业 5.86. 见第三版第五章作业 5.7实验五(第 5 章实验一)实验目的:1. 掌握循环的概念,学习用循环的思想来思考实际问题。2. 掌握单循环的使用方法。实验内容:1. 计算s = 100 n ,输出其结果。n=12. 使用循环结构输出下列图形。11113. 计算下列公式的和,要求最后一项小于105。1 -+-+ LL。提示:通项公式为:(-1)n-1。31017n 2 + 14. 输入 30 个字符,分别统计其中数字、字母及字符的个数。5. 求出Fibonacci(斐波那契)数列的前 20 项。Fibonacci(斐波那契
15、)数列的规律是:前 2 项为 0 和 1,其余各项为该项前 2 项之和,即 0,1,1,2,3,5,8,13。实验过程: 实验结果:1.#include #include main()int s=0;/试一下s 不赋初值int i;/循环变量for (i=1;i=100;i+)s+=i;printf(1+2+.+100=%dn,s); system(Pause);2.#include #include main()int i,j,k; for(i=0;i=9;i+)for(j=0;j=9-i;j+) printf( );/画空格for(k=0;k2*i+1;k+) printf(%d,i);/
16、输出 2i+1 个数字printf(n);system(Pause);3.#include #include #include main()int i=0;float sum=0.0,t; int f=1; t=1.0/(i*i+1);while(t=pow(10,-5)sum=sum+f*t; f=-f;/符号i+;t=1.0/(i*i+1);/项printf(sum=%9.6fn,sum); system(Pause);4.#include #include main()int num=0; int alph=0; int ch=0; int i;char c; for(i=1;i=0&c
17、=a&c=A&c=Z) alph+;elsech+;printf(number has %d,alph has %d,char has %d,num,alph,ch); system(Pause);5.#include #include main()long fib20 = 0,1; int i; for(i=2;i20;i+)fibi = fibi-1+fibi-2;for(i=0;i20;i+)printf(F%d=%dn, i, fibi);system(Pause);实验五(第 5 章实验二)实验目的:1. 进一步学习循环的使用方法,用循环解决复杂问题。2. 掌握多重循环的使用方法及其
18、他。实验内容:1. 分别使用双循环和单循环结构计算s = 10n=12. 编制程序,输出如下所示的九九乘法表。3. 输出下列所示菱形字符图形。n!,并输出其结果。4. 古代数学家在编写算经时,提出了一个不定方程问题,即著名的“百鸡问题”:鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一。百钱买百鸡,问鸡翁、母、雏各几何?5求s=1+(1+2)+(1+2+3)+,并输出其结果。实验过程:实验结果:1.参见第三版第 6 章作业 6.42.#include #include main()int i,j,k; for(i=1;i=9;i+)for(j=1;j=i;j+)printf(%d*%d=%d ,
19、j,i,i*j);printf(n);system(Pause);3.#include #include main()int i,j,k; for(i=0;i=9;i+)for(j=0;j=8-i;j+) printf( );for(k=0;k=2*i;k+) printf(*);printf(n);for(i=0;i=9;i+)for (j=0;j=i;j+) printf( );for(k=0;k=16-2*i;k+) printf(*);printf(n);system(Pause);4.#include #include main()int i,j,k; for(i=0;i=14;i+
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言程序设计 语言程序设计 实验 指导书 答案
限制150内