
C语言试验指导
文章平均质量分 52
stunt
这个作者很懒,什么都没留下…
展开
-
实验9-5 指针变量的运算
实验目的:理解指针变量运算的特点。实验步骤:1.分析程序指出数组元素在内存中的存放特点。1.1#include void main( ){ inta[3] = {1, 2, 3}; inti; for(i=0;i printf("%x\t",&a[i]);}1.2#include原创 2012-04-26 22:22:43 · 681 阅读 · 0 评论 -
实验5-5 循环的合并
实验目的:进一步熟悉循环。实验步骤:1.编程输入如下图形。分析:1)图形可以用两个循环输出,一个用于输出前五行,一个用于输出后四行。输出前五行时,第i次循环又可分为三部分,一部分用于输出空格,一部分用于输出1至i,一部分用于输出i-1至1。所以程序的部分代码为:for(i=0;i{ //输出空格 for(k=1; k pri原创 2012-03-03 22:21:35 · 606 阅读 · 0 评论 -
实验5-4 循环的嵌套
实验目的:1.体会“自顶向下,逐步求精”的思路2.掌握用循环解决复杂问题的方法。实验步骤:1.用循环输出如下图形。*************************分析:1)图形有5行,可以用循环输出每行。循环变量i由1到5,每循环一次就输出一行(第i行)。 for(i=1; i { //输出原创 2012-03-03 22:18:29 · 887 阅读 · 0 评论 -
实验5-3 break语句和continue语句
实验目的:1.分析break语句对循环结构的影响。2.掌握continue语句的用法。实验步骤:1.循环执行完毕后如何区分break退出和正常退出?2.分析下面程序中的break语句。#include void main() { int a, b, res = 0; char op; while(1 > 0)原创 2012-03-03 22:14:22 · 866 阅读 · 0 评论 -
实验5-2 for循环结构
实验目的:1.熟悉典型循环结构的3个特点。2.比较for循环结构与while循环结构。3.掌握for循环结构的用法。实验步骤:1.写出for循环结构的一般形式,画出相关的执行流程图,并用while循环结构实现此流程图。2.用for循环结构实现例5-2和例5-3。3.编程验证下面的结论。1)for( ;表达式2; )和while(表达式2)等价。2)for( ;;原创 2012-03-03 22:13:41 · 968 阅读 · 0 评论 -
实验5-1 while循环结构
实验目的:1.熟悉while循环结构2.使用while循环结构实验步骤:1.if选择结构与while循环结构1.1下面两个流程图有何区别与联系。1)2)2.2分析下面的代码段。1)int i = 2, sum = 1; if(i { sum = sum + i;原创 2012-03-03 22:12:20 · 1324 阅读 · 0 评论 -
实验4-9 综合练习
实验目的:进一步熟练使用选择结构。实验步骤:1.已知有三个整型变量a,b,c,a的值为23,b的值为32,用户输入的一个整数将存入变量c中。要求程序调整三个变量a,b,c的值,使得a的值最小,c的值最大。如用户输入-52后,经过调整,最终a的值为-52,b的值为23,c的值为32。2.把相关的流程图补充完整,并据此实现程序,注意体会else if形式的用法。2.1根据一般规律“原创 2012-02-04 15:18:27 · 500 阅读 · 0 评论 -
实验4-6 选择结构的嵌套
实验目的:熟练使用较复杂的选择结构。实验步骤:1.使用下面的选择结构实现例4-7。1)2)3)2.根据程序流程图实现例4-7。1)2)3.基本的选择结构嵌套有几种情况?画出大致的流程图并设计相应的题目,自己或让小组成员编程实现。提示:if结构嵌套if结构,if结构构嵌if-else结构if-else结构嵌套if-else结构,原创 2012-02-04 15:14:20 · 2846 阅读 · 0 评论 -
实验3-4 函数的使用
实验目的:1.体会“函数只是把用户的输入变成输出”的含义。2.通过数学函数的使用,学会正确使用函数。实验步骤:1.数学库中的abs函数用于求一个整数的绝对值,其首部为int abs(int n),因此,使用该函数时需要 ,函数会返回 。测试函数时可以用下表中的数据。输入的数据-303预期原创 2012-02-04 14:45:26 · 683 阅读 · 0 评论 -
实验5-6 do-while循环结构
实验目的:掌握do-while循环结构的用法。实验步骤:1.用户输入一个三位的正整数,如果输入的不正确,则程序会一直让用户输入。要求分别用for循环结构、while循环结构和do-while循环结构实现。2.当用户输入正确后,判断用户输入的数是否为水仙花数。3.把整个过程放入循环中以方便测试多个数据,用户输入-1时退出程序。原创 2012-03-03 22:22:12 · 1079 阅读 · 0 评论 -
实验5-7 程序调试入门
实验目的:学会使用调试功能发现程序中的逻辑错误。(注:对调试不熟悉的同学,请先观看同名的视频)实验步骤:1. 用户输入星期几的第一个英文字母,则程序输出相应的信息,如输入m(大小写不限)时,则输出“星期一”;如果输入的是s,则提示用户输入第二个字母,并根据又输入字母是a还是u,输出“星期六”或“星期日”。程序运行情况:1)2)3) 在第3次测试时程序原创 2012-03-03 22:31:01 · 710 阅读 · 0 评论 -
实验9-2 空指针
实验目的:进一步理解指针变量的作用。实验步骤:1.分析讨论下面程序的说法。使用指针变量有两个步骤。第一步:通过赋值(初始化)操作使指针变量指向某存储单元。(如int i, *pi=&i;或pi=&i;或pi=pj;等)第二步:通过间接引用操作符使用指针变量指向的存储单元。(如printf("%d",*pi);或*pi=5;等)2.指出并改正下面程序中的错误。#inc原创 2012-04-26 22:17:47 · 1421 阅读 · 1 评论 -
实验9-1 指针类型
实验9-1 指针类型实验目的:理解指针类型。实验步骤:1.分组讨论下面的说法或问题。1.1指针变量存储的内容为地址,而地址是有类型的,因为地址必须是某存储单元的地址时才有意义(即可以通过地址根据类型使用相关存储单元),因此,指针变量本质上指向的是某类型的存储单元。1.2有了指针变量就是又多了一种使用存储单元的途径。1.3地址是编号是整数,为何不能用整数给指针变量赋值?原创 2012-04-26 22:16:59 · 999 阅读 · 0 评论 -
实验9-4 函数的返回值为指针变量
实验目的:进一步理解野指针。实验步骤:1.分析下面的程序(例9-9)。#include int *test( ){ int i = 5, *pi = &i; return pi;}void test2( ){ int j = 3;}void main( ){ int原创 2012-04-26 22:21:59 · 723 阅读 · 0 评论 -
实验9-3 函数的形参为指针变量
实验目的:理解地址传递的特点,掌握指针为形参时的用法。实验步骤:1.分析求两个整数和的函数。1.1程序如下:#includeint add(int x,int y){ int z; z = x + y; return z;}void main( ){ inta = 23, b = -5;原创 2012-04-26 22:21:15 · 1214 阅读 · 0 评论 -
C语言实验指导书下载地址
http://ishare.iask.sina.com.cn/f/23339579.html原创 2012-03-17 18:54:08 · 620 阅读 · 0 评论 -
实验2-2 长度修饰符l和修饰符h的使用
实验目的:用printf函数正确输出整型变量的值时需要使用与变量类型相适应的格式字符串,如有符号数用%d、无符号数用%u,此外还需根据变量所标识存储单元的长度选用适当的修饰符。一般而言,short型用长度修饰符h,long型用长度修饰符l,int型不加。如果不匹配时会出现什么情况呢?这是本次实验需要解决的问题之一。长度修饰符对scanf函数有何影响是本次实验需要解决的另一个问题。实验步骤:原创 2012-01-14 16:31:23 · 2382 阅读 · 0 评论 -
第2章实验补充C语言中如何计算补码
实验目的:理解C语言中如何计算补码,掌握“矛盾”赋值时如何处理数据。实验步骤:1.验证没有赋值的变量的值是“随机的”。1.1在VC6.0没有赋值的整型变量其存储单元中每个字节都是0xcc。如程序#include void main(){ long i; short j; printf("%lx,%hx\n", i, j);原创 2012-03-14 12:05:28 · 2568 阅读 · 0 评论 -
实验5-8 综合练习
实验目的:进一步掌握循环结构的用法。实验步骤:1.计算n!(n1.1分析:可分二步。第一步求出n!存入变量fac中。第二步判断fac的末尾有多少个零。测试数据。变量n的输入值1010010000预期的输出2?(估计好多)?(估计好多)实验的原创 2012-03-03 22:32:32 · 586 阅读 · 0 评论 -
实验3-3 强制类型转换和自增自减操作符
实验目的:1.掌握强制类型转换操作符的特点。2.正确使用自增自减操作符。实验步骤:1.分析下面程序的输出#include int main() { float fa = 2.3; printf("%d\n", (int)fa % 3); printf("%f\n", fa);}分析:强制类型转换对原操作数有影响原创 2012-02-04 14:43:35 · 1157 阅读 · 0 评论 -
实验4-7 条件操作符
实验目的:掌握条件操作符实验步骤:1.条件表达式i>j?++i:++j是如何求值的?为什么?编程验证。 怎样看条件操作符和if-else结构的关系?2. if(a > b)max = a;else max = b;可以改写为(a > b)?(max = a):(max = b),其中的括号可能去掉吗?为什么?还可以改写为原创 2012-02-04 15:15:16 · 705 阅读 · 0 评论 -
实验4-2 逻辑表达式
实验目的:1.理解逻辑操作符的特点(优先级、序列点、操作数)。2.学会用逻辑表达式正确地表示数学上的一些结论。3.掌握逻辑表达式的求值。实验步骤:1. 求出表中表达式的值并编程验证。 2&&3! 'a'+2.3! '0' * 2.3! '\0' * 2.3'\1' * 2.3'\1' -原创 2012-02-04 15:04:41 · 960 阅读 · 0 评论 -
实验2-4 浮点型数据的输入输出
实验目的:比照整型数据输入输出的探讨方式,研究浮点型数据的输入输出,在加深理解的基础上能熟练使用浮点型数据。实验步骤://分数22/7小数点后有几位?如果用它表示圆周率可以精确到哪一位?1.填表并分析float型fafbfcfd值2.3-0.00232.3e5原创 2012-01-27 22:02:08 · 3731 阅读 · 0 评论 -
实验2-7 再谈输入函数
实验目的:本次实验解决如下两个问题。1.使用scanf函数输入多个数据时通常用空格、回车分隔,可以用其它字符分隔吗?2.scanf函数(getchar)一定会暂停程序的执行让用户输入数据吗?实验步骤:1.由附录A可知scanf函数中的格式字符串主要由普通字符和转换控制字符组成。如果格式字符串中不含普通字符即全部由转换控制字符组成如"%d%d",则用户输入的多个数据之间通常用空格原创 2012-01-27 22:05:59 · 532 阅读 · 0 评论 -
实验2-3 进一步掌握printf函数的使用
实验目的:自学附录A,解决整数以十六进制(八进制)形式输出时加前缀和域宽与标记符号“-”在整型数据输出时的作用这两个问题。提高自学能力,加深对printf的理解。此外,解决当用超出取值范围的整数给整型变量赋值时,变量的实际值是多少的问题。提示:1) 整数以十六进制(八进制)形式输出时通常不加前缀,如printf(“%hx”, 255)的输出为ff(printf(“ho”, 19)的输原创 2012-01-14 16:32:57 · 816 阅读 · 0 评论 -
实验1-5 用工作区组织工程
实验目的:在VC6.0中利用工作区(workspace或工作空间)组织工程(project)。实验内容:创建一个工作区,并在其中创建多个工程。实验重难点:理解工作区的概念;分清工作区与工程的关系;明白何谓“活动工程”。实验步骤:/*************************************************************************VC原创 2012-01-14 16:13:37 · 2196 阅读 · 0 评论 -
实验2-1 多种进制形式的整型数据的输入输出
特别声明:从本章开始,需要实验者根据实验目的及相关知识自己总结出每次实验的重难点。如果对知识点比较熟悉,则可在实验之前总结出实验的重难点。也可在做完实验之后总结出本次实验的重难点。实验的重难点可作为“实验结果及分析”的内容之一。实验目的:1.熟悉多种进制形式的整型数据的输入输出2.分析输入输出函数处理数据的原则3.通过“数据矛盾”时输入输出函数的处理方法,加深对输入输出函数的理原创 2012-01-14 16:25:49 · 2648 阅读 · 1 评论 -
实验1-1 VC6.0的使用
实验内容:1、 熟悉VC6.0集成开发环境2、 编写及编译运行一个简单的C程序3、 运行一个自己仿写C程序实验目的及要求:1、 学会使用VC6.02、 识别源文件中常见的错误实验重点:1、熟悉C语言的编译环境,了解在VC6.0上如何编辑、编译、连接和运行一个C程序。实验难点:1、 体会VC6.0如何利用工程(project)组织程序2、 出原创 2011-12-22 08:59:31 · 3967 阅读 · 0 评论 -
试验1-4 C语言学习中的帮手
实验内容:熟悉C语言学习中的帮手实验目的及要求:了解每种帮助的特点,能根据情况运用恰当的方式解决学习中遇到问题。实验重难点:每种帮助的特点实验步骤://实践是检验真理的唯一标准。用编程的方式解决问题。1、C语言中大小写敏感吗?(如有int n;则使用这个变量时可以用N吗?可以用则C语言大小写不敏感;否则大小写敏感。)这个问题可以用编程的方式验证。测试程序如图1所原创 2011-12-22 09:28:11 · 1230 阅读 · 0 评论 -
实验1-3 C程序的执行顺序
实验内容:1、 用VC6.0调试执行一个C程序2、 观察一个C函数被调用时的执行情况实验目的及要求:1、 掌握用VC6.0调试执行一个C程序的方法2、 初步理解一个C函数的执行过程实验重点:1、 掌握“断点”、“调试执行”、“单步执行”等概念2、 分析函数的执行过程3、 在程序调试执行时输入数据,观察输出实验难点:1、 区分调试执行时快捷原创 2011-12-22 09:21:47 · 5776 阅读 · 0 评论 -
实验2-6 字符型数据的输入输出
实验目的:1.掌握double型浮点数与float型浮点数的区别2.与整型数据相比,浮点型数据会出现误差,只要使用浮点型数据就一定会出现误差吗?实验步骤:1. 填表并分析double型fafbfcfd值2.3-0.00232.3e50.00023E原创 2012-01-27 22:04:21 · 2461 阅读 · 0 评论 -
实验4-4 if结构的分析
实验目的:1.了解return语句对if结构的影响。2.分析if结构的特点。实验步骤:1.如果用户输入是正数,则程序输出“您输入的是正数!”,否则程序输出“您输入的不是正数!”。(用if结构实现)分析:这个程序中的if结构与其它的if结构有何区别?提示:当条件为假时有语句执行吗?此时执行的语句在条件为真时执行了吗?2.用户输入两个整数,程序先按从小到大的顺序输出,再原创 2012-02-04 15:09:32 · 613 阅读 · 0 评论 -
实验4-1 逻辑量的编码和关系操作符
实验目的:1.掌握逻辑量编码的特点2.熟练关系表达式的求值实验步骤:1.求出表中表达式的值并编程验证。int型变量a的初值a>0a==0aa>=0aa=0a=33原创 2012-02-04 15:01:51 · 512 阅读 · 0 评论 -
实验3-5 编程初步
实验目的:1.利用表达式实现简单的功能2.学会分析程序执行时其状态(各变量的值)的变化。实验步骤:1.把下面的程序补充完整。程序的功能为当用户输入一个小数点位数较多的小数时,程序输出它四舍五入到小数点后两位的结果。测试数据如下: 第一次第二次第三次用户输入3.14159263.145原创 2012-02-04 14:47:38 · 1175 阅读 · 0 评论 -
实验3-2 算术操作符
实验目的:1.掌握求余操作符%的运算规律2.掌握算术运算时类型转换的规则。实验步骤:1.求下面表达式的值并编程验证-3/2 3/-2 3/2 -3/-2 -3%2 3%-2 3%2 -3%-2分析:1)原创 2012-02-04 14:42:35 · 554 阅读 · 0 评论 -
实验4-3 if结构的初步
实验目的:1.熟悉if结构2.正确使用if结构实验步骤:1.画出下面代码的流程图1)#include int main() { int i; scanf("%d", &i); if(i i = -i; printf("%d\n", i);}2)#include i原创 2012-02-04 15:07:18 · 535 阅读 · 0 评论 -
实验3-1 赋值操作符
实验目的:1.理解赋值操作符的作用2.掌握如何判断一个C表达式是否合法。3.体会每个C表达式都有一个值的含义。实验步骤:1.赋值操作符有何作用?1.1分析程序并说明赋值操作符的作用。#include int main() { int a; a = 2; printf("%d\n", a);}1.2分析程序原创 2012-02-04 14:39:53 · 609 阅读 · 0 评论 -
实验2-8 调试窗口之Memory(*****)
实验目的:已经掌握了整型数据和浮点型数据的数字化信息编码方式,但是编码后数据在内存中真实的存储状态究竟如何?可以在调试的Memory(内存)窗口中查看最原始的存储状态。实验步骤:1.如图1所示,在程序中插入断点并调试执行程序。图1 在程序中插入断点2.如图2所示,利用表达式&i求出变量i所标识存储单元的地址图2 求出变量i所标识存储单元的地址3.如图3、4所示,原创 2012-02-04 14:36:09 · 1464 阅读 · 0 评论 -
实验4-10 用if结构求1+2+…+n(n<=10)的值
实验目的:体会if结构的特殊作用。实验步骤:1.分析程序。#include void main() { int i = 2, sum = 1; int n; printf("请输入一个不大于10的正整数!\n"); scanf("%d", &n); if(i {原创 2012-02-04 15:19:09 · 1165 阅读 · 0 评论 -
实验4-8 switch结构
实验目的:1.掌握基本的switch结构。2.掌握带break语句的switch结构。实验步骤:根据问题自己设计实验步骤。1.switch结构中case后面只能带常量表达式吗?2.基本的switch结构中case语句的次序对switch结构有无影响?3.default语句可有无吗?它的次序是固定的吗?4.与case标号相关联的语句序列可以为空吗?5.如何评价基本原创 2012-02-04 15:15:49 · 637 阅读 · 0 评论