- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
C实验报告答案完整版
实验1简单判定性问题求解
⼀、实验学时
完成本实验需4学时。
⼆、实验⽬的
1、阅读程序题
(1)掌握C语⾔数据类型,熟悉如何定义⼀个整型、字符型的变量,以及对它们赋值的⽅法;
(2)掌握不同的类型数据之间赋值的规律;
(3)掌握数据在内存中的存储⽅式;
(4)学会输⼊、输出函数的基本格式和使⽤⽅法;
(5)学会使⽤有关算术运算符、逻辑运算符、关系运算符,以及包含这些运算符的表达式。
2、编程题
(1)如何运⽤if-else判定性结构进⾏程序设计;
(2)如何运⽤switch判定性结构进⾏程序设计。
3、调试题
(1)熟悉C程序的编辑、编译、连接和运⾏的过程。
三、实验指导
为了达到最佳的实验效果,以下提供⼏条适于编程的指导意见,可供参考。
1、阅读程序题应先运⽤⾃⼰在课堂所学的知识,推导出结果,在上机时输⼊计算机,印证⾃⼰推导的结果,注意观察数据在
内存中的存储⽅式、含不同种运算符表达式的输出结果。
2、编程题必须⾸先画出流程图,并反复思考判断程序设计的正确性,完成程序的设计。要注意简单判定性问题的结构选择。
3、调试题应明确程序的调试、测试是⼀项⾮常烦琐的⼯作,也是⾮常重要的⼯作。对于初学者来说应该建⽴良好的习惯,在
调试程序的时候,应该尽可能考虑到程序运⾏时各种可能情况。
四、实验内容
1、阅读程序题
(1)main()
{/*定义字符型变量*/
charc1,c2;/*向字符变量赋以整数*/
c1=97;
c2=98;
printf(%c%c\n,c1,c2);/*以字符形式输出*/
printf(%d%d\n,c1,c2);/*以整数形式输出*/
}
思考:可否改成intc1,c2;输出结果是?相同
(2)main()
{
inta=7,b=5;
printf(%d\n,b=b/a);
}
思考:若将printf语句中%d变为%f,可否输出分式的值?可以(3)main()
{
inta=9;
a+=a-=a+a;/*包含复合的赋值运算符的赋值表达式*/
printf(%d\n,a);
}
思考:赋值表达式a+=a-=a+a的求解步骤?
第⼀步:a=a-(a+a)=-9第⼆步a=a+a=18
(4)main()
{
intk=-1;
printf(%d,%u\n,k,k);
}
思考:-1在内存中的存储形式?
取反加⼀11111111111111111111111111111111(32个)
(5)main()
{
unsignedx1;
intb=-1;
x1=b;/*有符号数据传送给⽆符号变量*/
printf(%u,x1);
}
(6)main()
{
inta=3,b=4,c=5;
printf(%d\n,(!(a
printf(%d,c);
}
思考:若将第⼀个
1(换⾏)6
(7)main()
{inta=1,b=2,c=3;
if(c=a);printf(%d\n,c);
elseprintf(%d\n,b);
}
2、编程序并上机调试运⾏(包括题⽬及要求、流程图、程序清单、测试数据及结果)
(1)将⼀个百分制成绩转换成等级制成绩,百分制与等级制的对应
具体要求如下:
1)⽤switch语句实现该功能;
2)⽤键盘输⼊百分制成绩,输⼊前要有提⽰信息,对于不合理的数
据应输出错误信息;
3)输出结果应包含百分制成绩和成绩等级;
4)分别输⼊成绩-10,30,60,68,75,83,95,102,查看记录运
⾏结果。
=====年
期限年期限年期限年期限年期限8%
84.05%75.03%
69.02%66.01%63.0
(2)银⾏整存整取存款不同期限的⽉息利率分别为:
输⼊存款的本⾦和年限,求到期时能从银⾏得到
的利息与本⾦的合计。(利息的计算公式为:利息=本⾦×⽉息利率×12
程序代码
⽉息利率=
输出结果:
133.12本⾦⾦额不能为负!
(3)调试下⾯程序,使之具有如下功能:输⼊a、b、c三个整数,求最⼩值。
main()
{
inta,b,c;
scanf(%d%d%d,a,b,c);
if((ab)(ac))
if(b
printf(min=%d\n,b);
else
printf(min=%d\n,c);
if((a
printf(min=%d\n,a);
}
程序中包含有⼀些错误,按下述步骤进⾏调试。
1)设置
文档评论(0)