- 1、本文档共56页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c语言实验报告(附答案版)
实验
一、实验学时二、实验目的1、
(2)掌握不同的类型数据之间赋值的规律;
(3)掌握数据在内存中的存储方式;
(4)学会输入、输出函数的基本格式和使用方法;
(5)学会使用有关算术运算符、逻辑运算符、关系运算符,以及包含这些运算符的表达式。
2、、三、
为了达到最佳的效果,以下提供几条适于编程的指导,可供参考。
1、。2、。程序的调试、测试是一项非常烦琐的工作,也是非常重要的工作。对于初学者来说应该建立良好的习惯,在调试程序的时候,应该尽可能考虑到程序运行时各种可能。
四、main( )
{ /*定义字符型变量*/
char c1,c2; /*向字符变量赋以整数*/
c1=97;
c2=98;
printf(%c %c\n,c1,c2); /*以字符形式输出*/
printf(%d %d\n,c1,c2); /*以整数形式输出*/
}
该程序的输出结果是 a b(换行)97 98 。
思考:可否改成int c1,c2;输出结果是? 相同
(2)main()
{
int a=7,b=5;
printf(%d\n,b=b/a);
}
该程序的输出结果是 0 。
思考:若将printf语句中%d变为%f,可否输出分式的值? 可以
(3)main()
{
int a=9;
a+=a-=a+a; /*包含复合的赋值运算符的赋值表达式*/
printf(%d\n,a);
}
该程序的输出结果是 -18 。
思考:赋值表达式a+=a-=a+a的求解步骤?
第一步:a=a-(a+a)=-9 第二步a=a+a=18
(4)main()
{
int k=-1;
printf(%d,%u\n,k,k);
}
该程序的输出结果是 -1 4294967295 。
思考:-1在内存中的存储形式?
取反加一 11111111111111111111111111111111(32个)
(5)main()
{
unsigned x1;
int b=-1;
x1=b; /*有符号数据传送给无符号变量*/
printf(%u,x1);
}
该程序的输出结果是 4294967295 。
思考:不同类型的整型数据相互赋值时,规则是什么?
/happymawolf/article/details/6342937(有符号赋值给无符号)
(6)main()
{
int a=3,b=4,c=5;
printf(%d\n,(!(ab))(c=c+1));
printf(%d,c);
}
该程序的输出结果是 0(换行)5 。
思考:若将第一个printf语句中变为|| ,结果将如何?
1(换行)6
(7)main()
{ int a=1,b=2,c=3;
if(c=a) ; printf(%d\n,c);
else printf(%d\n,b);
}
该程序的输出结果是 1 。
2、编程序并上机调试运行(包括题目及要求、流程图、程序清单、测试数据及结果)
(1)将一个百分制成绩转换成等级制成绩,百分制与等级制的对应关系如下表:百分制 90-100 80-89 70-79 60-69 60 等级制 优 良 中 差 劣 具体要求如下:用switch语句实现该功能
用键盘输入百分制成绩,输入前要有提示信息,对于不合理的数据应输出错误信息
输出结果应包含百分制成绩和成绩等级
分别输入成绩-10,30,60,68,75,83,95,102,查看记录运行结果。
见下页
测试数据:100,50,-20
输出结果:优,劣,成绩输入错误
(2)银行整存整取存款不同期限的月息利率分别为:
输入存款的本金和年限,求到期时能从银行得到的利息与本金的合计。(利息的计算公式为:利息=本金×月息利率×12 ×存款年限。
见下页
测试数据:
4,100 04,-10
输出结果:
133.12 本金金额不能为负!
(3)调试程序使之具有如下功能:输入a、b、c三个整数,求最小值。main()
{
int a,b,c;
scanf(%d%d%d,a,b,c);
if((ab)(ac))
if(bc)
printf(min=%d\n,b);
else
printf(min=%d\n,c);
if((ab)(ac))
printf(min=%d\n,a);
文档评论(0)