- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
上机实验三-答案
上机实验三 简单的C语言程序设计
班级 学号 姓名
一共5个题目,其中一个选做题
重要提示:上传文件时,邮件主题和word文档文件名格式:姓名+学号+班级+实验几
一.目的要求
掌握C语言中输入、输出函数的基本使用方法。
掌握如何定义整型、单精度、双精度变量,如何输入或输出这些变量的值。
掌握C算术运算符的基本概念、基本属性、运算规则。
掌握关系运算的求值规则。
记录运行结果,回答问题,完成上机实验报告。
二.实验内容
【实验题1】输入下列源程序,进行修改、编译、连接和运行。
提示: exp(x)为一数学函数,用来求解ex,即e的x次方
问题与思考:
(1)假如删除/*line 2 */代码行,程序是否仍正确?原因是?
(2)/*line 6*/的代码行有错误,正确代码为:___scanf(“%f”,x);__________。
(3)改正以上错误并运行程序,输入0.05并回车,显示结果是_f(0.050000) = 1.05____________。再次运行该程序,输入2.5并回车,显示结果是____ f(2.500000) = 5.25_________。
(4)把最后一行代码行改为: printf( f(%.2f) = %.2f \n, x, y); 运行程序,并输入2.546,显示结果是__f(2.55)_=5.48________, %.2f 的作用是___控制小数位占两位______________.
若/* line 9*/代码行改为: printf( f(%6.1f) = %6.1f \n, x, y); 运行程序,并输入2.546,显示结果是__f( 2.5)= 5.5_________, %6.1f 的作用是_数据一共占6列,小数位占一位________________.
若/* line 9*/代码行改为: printf( f(%-6.1f) = %-6.1f \n, x, y); 运行程序,并输入2.546,显示结果是_ f(2.5 )=5.5__________, %-6.1f 的作用是___数据一共占6列,小数位一位,并且左对齐___.
若/* line 9*/代码行改为: printf( f(%6.2f) = %6.2f \n, x, y); 运行程序,并输入2.546,显示结果是__ f( 2.55)= 5.48_________, %6.2f 的作用是_____数据一共占6列,小数位占两位____________.
(5) 如将/* line 7*/代码行中的“if(x=1)”改为“if (x1)”,为保证程序正确性,该if 语句应如何修改?
if(x 1)
y = x*x - 1;
else
y = exp(x);
【实验题】请将下列源程序填写完整。
#include stdio.h
void main()
{ int a,b;
float x,y;
double s;
scanf(%d,%d, a , b ); /* line 6: 输入a,b的值 */
scanf(%f,%f, x , y ); /* line 7: 输入x,y的值 */
scanf(%lf,%lf, r , s ); /* line 8: 输入r,s的值 */
printf(a=%d, b=%d\n,a,b); /* line 9 */
printf(x=%f, y=%f\n,x,y); /* line 10 */
printf(r=%f, s=%f\n,r,s); /* line 11 */
}
编译、连接并运行程序,输出结果:
rintf(a=%5d, b=%5d\n, a,b);
printf(x=%.2f, y=%.2f\n,x,y);
printf(r=%9f, s=%9f\n, r,s);
重新编译、连接并运行,输入内容同上,则输出结果:
rintf(r=%9.f, s=%9.f\n, r,s); /* line 12 */
对应该语句的输出结果是
比较printf(r=%9.f, s=%9.f\n, r,s);与语句printf(r=%9f, s=%9f\n, r,s);,它们有什么不同?
printf(r=%9.f, s=%9.f\n, r,s); 表示数据一共占9列,小数位占0列
printf(r=%9f, s=%9f\n, r,s); 表示数据一共占9列,小数位不做控制,默认为6列
思考题——位于%与字母d或f之间加入的数字起什么作用?其中,
%5d中的5: 数
文档评论(0)