2022年完整word版,C语言程序设计何钦铭颜晖第章C语言编写程序 .pdf





《2022年完整word版,C语言程序设计何钦铭颜晖第章C语言编写程序 .pdf》由会员分享,可在线阅读,更多相关《2022年完整word版,C语言程序设计何钦铭颜晖第章C语言编写程序 .pdf(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第 2 章C 语言编写程序【练习 2-1】输出短句( Programming in C is fun! ) :在屏幕上显示一个短句“Programming in C is fun!”。试编写相应程序。解答:#include int main(void) printf(Programming in C is fun!n); return 0; 【练习 2-2】 下列语句的运行结果是什么?与例 2-2 的运行结果有何不同?为什么?printf(Programming is fun. And Programming in C is even more fun!n); 解答:运行结果: Program
2、ming is fun. And Programming in C is even more fun! 例 2-2 的运行结果分 2 行显示。原因在于,例 2-2 中在每条输出语句的结尾都采用了n换行。【练习 2-3】输出倒三角图案: 在屏幕上显示如下倒三角图案。 试编写相应程序。* * * * * * * * * * 解答:#include int main(void) printf(* * * *n * * * n * * n * n); return 0; 【练习 2-4】 温度转换:求华氏温度150F 对应的摄氏温度(计算公式同例 2-3 ) 。试编写相应程序。解答:#include
3、int main(void) double celsius,fahr; printf(Enter fahr:n); scanf(%lf,&fahr); celsius=5.0*(fahr-32)/9; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 10 页 - - - - - - - - - printf(celsius=%.2lfn,celsius); return 0; 【 练 习2-5 】 算术表达式5*(fahr-32)/9 能改写成5(fahr-32)/9 吗
4、 ?为 什 么 ? 如 果 将 其 改 写 为 5/9*(fahr-32),会影响运算结果吗?解答:5(fahr-32)/9 不是合法的 C 表达式,因为不能省略运算符*;5/9*(fahr-32)的值为 0 。【练习 2-6】一个物体从 100 米的高空自由落下,编写程序,求它在前 3 秒内下落的垂直距离。设重力加速度为 10m/s 2。解答:#include int main(void) double h,g=10,t=3; h=1/2*g*t*t; printf(h=%fn,h); return 0; 【练习2-7 】输入 提示和 输入 语句 的顺 序应该 如何 安排 ?例 2-5 中,
5、scanf(%d%d%lf, &money, &year,&rate) 能改写为 scanf(%d%lf%d, &money, &year, &rate) 吗?为什 么 ?能 改 写 为 scanf(%d%lf%d, &money, &rate, &year) 吗?如果可以,其对应的输入数据是什么?解答:输入提示在前,输入语句在后。不能改写为 scanf(%d%lf%d, &money, &year, &rate) ,因为 %lf 与整型变量 money 不匹配, %d 与浮点型变量 rate 不匹配。与 scanf(%d%lf%d, &money, &rate, &year) 对应的输入数据
6、为: 1000 0.025 3 【练习 2-8】 计算摄氏温度:输入华氏温度,输出对应的摄氏温度,计算公式同例 2-3 。试编写相应程序。解答:#include int main(void) int celsius, fahr; Printf( “Input fahr:”); scanf(%d, &fahr); celsius = 5 * (fahr - 32) / 9; printf(celsius = %dn, celsius); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第
7、2 页,共 10 页 - - - - - - - - - return 0; 【练习 2-9】整数四则运算:输入 2 个正整数,计算并输出它们的和、差、积、商。试编写相应程序。解答:#include int main (void) double m,n; printf(Enter m:n); scanf(%lf,&m); printf(Enter n(n!=0):n); scanf(%lf,&n); printf(m+n=%.0lfn,m+n); printf(m-n=%.0lfn,m-n); printf(m*n=%.0lfn,m*n); printf(m/n=%.2lfn,m/n); re
8、turn 0; 【练习 2-10】计算分段函数(判断x 是否不为 0) :输入 x ,计算并输出下列分段函数 f(x)的值(保留 1 位小数) 。试编写相应程序。 x 0 y=f(x)= 0 x=0 解答:#include int main(void) double x,y; printf(Enter x:n); scanf(%lf,&x); if(x!=0) y=1/x; else y=0; printf(y=f(%lf)=%.1lfn,x,y); return 0; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整
9、理 - - - - - - - 第 3 页,共 10 页 - - - - - - - - - 【练习 2-11】计算分段函数(判断x 是否小于 0) :输入 x ,计算并输出下列分段函数 f(x )的值(保留 2 位小数) 。可包含头文件 math.h,并调用 sqrt ()函数求平方根,调用 pow() 函数求幂。试编写相应程序。 x2+2x+ x0 y=f(x)= x0解答:#include #include int main(void) double x, y; printf(“Input x:”); scanf(%lf, &x); if(x = 0) y = sqrt(x); else
10、 y = pow(x,5) + 2 * x + 1 / x; printf(f(%.2f) = %.2fn, x, y); return 0; 【练习 2-12】输出华氏 -摄氏温度转换表:输入两个整数 lower和 upper,输出一张华氏 -摄氏温度转换表,华氏温度的取值范围是lower, upper,每次增加2F,计算公式同例 2-6 。试编写相应程序。解答:#include int main(void) int lower, upper; double celsius, fahr; printf(“Input lower and upper:”); scanf(%d%d, &lower
11、, &upper); if(lower=upper) printf(“fahr celsiusn”); for(fahr = lower; fahr = upper; fahr = fahr + 2) celsius = 5 * (fahr - 32.0)/9 ; printf(%3.0f %6.1fn, fahr, celsius); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 10 页 - - - - - - - - - else printf(“Invalid
12、Value!n”); return 0; 【练习 2-13】求给定序列前 n 项和(1+1/2+1/3+ ) :输入一个正整数 n ,计算序列 1+1/2+1/3+ 的前 n 项之和。试编写相应程序。解答:#include int main(void) int i, n; double sum; printf(“ Input n:”); scanf(%d, &n); sum = 0; for(i = 1; i = n; i+) sum = sum + 1.0 / i; printf(sum = %.6fn, sum); return 0; 【练习 2-14】求给定序列前 n 项和(1+1/3+
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年完整word版 C语言程序设计何钦铭颜晖第章C语言编写程序 2022 完整 word 语言程序设计 钦铭颜晖第章 语言 编写 程序

限制150内