C语言上机练习参考答案.doc

上传人:99****p 文档编号:1616832 上传时间:2019-03-09 格式:DOC 页数:120 大小:1.04MB
下载 相关 举报
C语言上机练习参考答案.doc_第1页
第1页 / 共120页
C语言上机练习参考答案.doc_第2页
第2页 / 共120页
C语言上机练习参考答案.doc_第3页
第3页 / 共120页
C语言上机练习参考答案.doc_第4页
第4页 / 共120页
C语言上机练习参考答案.doc_第5页
第5页 / 共120页
点击查看更多>>
资源描述

1、1 第 1 章 C 语言概述1-1 编写程序,在屏幕上显示一个如下输出:-Programming in C is fun!I love C language.-Program#include main() printf(“-n“);printf(“Programming in C is fun!n“);printf(“I love C language.n“);printf(“-n“);1-2 编写程序,在屏幕上显示一个如下图案:* * * * * * *Program (1)#include main() printf(“* * * *n“);printf(“ * * *n“);printf

2、(“ * *n“);printf(“ *n “);Program (2) #include main() printf(“%c%4c%4c%4cn“, *, *, *, *);2printf(“%3c%4c%4cn“, *, *, *);printf(“%5c%4cn“, *, *);printf(“%7cn “, *);1-3 已知某个圆的半径,编写一个程序,用来计算并显示面积。要求:将 定义为符号常量,并假设一个恰当的半径值。Program#include #define PI 3.14main() float r=5, s;s = PI*r*r;printf(“The area of c

3、ircle is: %.2fn“, s);Output The area of circle is: 78.501-4 已知两个整数 20 和 10,编写程序,自定义函数 add( )将这两个数相加,自定义函数 sub( )计算这两个数的差,并按照下面形式显示计算结果:20+10=3020-10=10Program#include int add(int a, int b) return (a+b);int sub(int a, int b) return (a-b);main() int a=20, b=10;printf(“%d + %d = %dn“, a, b, add(a, b);p

4、rintf(“%d - %d = %dn“, a, b, sub(a, b);3Output 20 + 10 = 3020 10 = 101-5 已知变量 a、b 和 c 的值,编写程序,用来计算并显示 x 的值,其中 cbax请分别用以下数值运行该程序(1)a=250,b=85,c=25(2)a=300,b=70,c=80Program (1)#include main() int a=250, b=85, c=25;float x;x=1.0*a/(b-c);printf(“x = %.2fn“, x);Output (1)x = 4.17Program (2)#include main(

5、) int a=300, b=70, c=80;float x;x=1.0*a/(b-c); /*试写成 x=a/(b-c); 得到什么运行结果?为什么?*/printf(“x = %.2fn“, x);Output (2)x = -30.004 第 2 章 常量、变量及数据类型 float c;c=5.0*(f-32)/9; /*如果是 c=5*(f-32)/9; 会是什么结果?为什么?*/printf(“Celsius degree (corresponding to %d Fahrenheit) is: %.2f.n“, f, c);Output Celsius degree (corr

6、esponding to 100 Fahrenheit) is: 37.78.3-2 一个物体从 100m 的高空自由落下,编写程序,求它在前 3s 内下落的垂直距离。设重力加速度为 10m/s2。要求,将重力加速度定义为符号常量,尝试将其改为 9.8 m/s2,看结果有何不同?Program #include #define G 10main() int t=3;float s;s=1.0/2*G*t*t; /*如果是 s=1/2*G*t*t; 会是什么结果?为什么? */printf(“The falling vertical distance (in %d seconds) is: %.

7、2f.n“, t, s);Output 5The falling vertical distance (in 3 seconds) is:45.00.3-3 将球的半径 R 定义为符号常量,计算球的表面积(4R 2)和体积(4/3*R 3) 。Program #include #define R 5.2#define PI 3.14main() float s, v;s=4*PI*R*R;v=4.0/3*PI*R*R*R;printf(“The surface area of the ball (radius is %.2f) is: %.2f, and the volume is: %.2f

8、.n“, R, s, v);Output The surface area of the ball (radius is 5.20) is: 339.62, and the volume 588.68.3-4 给定 x、y 和 z 的值,编写程序,使 x 等于 y 的值,y 等于 z 的值,z 等于 x 的值。Program #include main() int x=1, y=2, z=3, t;printf(“Before swap: x=%d, y=%d, z=%d.n“, x, y, z);t=x;x=y;y=z;z=t; /*变量 t 的作用是什么?*/printf(“After s

9、wap: x=%d, y=%d, z=%d.n“, x, y, z);Output Before swap: x=1, y=2, z=3.After swap: x=2, y=3, z=1.63-5 编写一个程序,给定一个浮点数(例如 456.78) ,显示该数的十位数字与个位数字之和(例如 5+6=11) 。Program (1)#include main() float f=456.78;int n, a, b;n=f;a = n%10; /*赋值后,a 是什么值?*/b = n/10%10; /*赋值后,b 是什么值?*/printf(“The sum of the tens digit

10、 and units digit of %.2f is: %d + %d = %d.n“, f, b, a, a+b);Program (2)#include main() float f=456.78;int n, a, b;n=f;a = n%10;b = n%100/10; /*该语句与上面程序不同,看看有何区别?*/printf(“The sum of the tens digit and units digit of %.2f is: %d + %d = %d.n“, f, b, a, a+b);Output The sum of the tens digit and units d

11、igit of 456.78 is: 5+ 6 = 11.3-6 某种物品每年折旧费的计算方法如下: 使 用 年 限废 品 价 值购 买 价 格折 旧 费 编写一个程序,当给定某物品的购买价格、使用年限和每年的折旧费时,计算出其废品价值。Program #include 7main() float price=120.65, year=3, depreciation=10.2, value;value = price - year*depreciation;printf(“The scrap value is %.2f.n“, value);Output The scrap value is

12、90.05.3-7 在库存管理中,某单个物品的经济定购数 EOQ 由下面等式给定: 储 备 成 本单 位 时 间 内 每 种 物 品 的生 产 成 本需 求 率 2EOQ而最优的定购时间间隔 TBO 由下面等式给定: 储 备 成 本单 位 时 间 内 每 种 物 品 的需 求 率 生 产 成 本2TB编写程序,给定需求率(单位时间内的物品数) 、生产成本(每个定购)和储备成本(单位时间内每种物品) ,计算 EOQ 和 TBO。Program #include #include main() int demand=1000;float product_cost=3.5, storage_cost

13、=0.63, eoq, tbo;eoq=sqrt(2*demand*product_cost/storage_cost);tbo=sqrt(2*product_cost/demand/storage_cost);printf(“EOQ is %.2f, and TBO is %.2f.n“, eoq, tbo); Output EOQ is 105.41, and TBO is 0.11.8 第 4 章 输入输出操作管理4-1 输入两个数,将它们交换后输出。Program #include main() int x, y, t;printf(“Please input 2 numbers: “

14、);scanf(“%d%d“, printf(“Before swap, the 2 numbers are: %d, %dn“, x, y);t=x;x=y;y=t;printf(“After swap, the 2 numbers are: %d, %dn“, x, y);Output Please input 2 numbers: 3 5 /* Blue is input */Before swap, the 2 numbers are: 3, 5After swap, the 2 numbers are: 5, 34-2 输入一个十进制数,输出对应的八进制数和十六进制数。Program

15、 #include main() int n;printf(“Please input a decimal number: “);scanf(“%d “, printf(“The octal is %o, and the hexadecimal is %x.n“, n, n);Output Please input a decimal number: 10 /* Blue is input */The octal is 12, and the hexadecimal is a.考虑:如何得到下面的输出?Please input a decimal number: 10 /* Blue is i

16、nput */The octal is 012, and the hexadecimal is 0xa.94-3 编写程序,输入 3 个整数,计算并输出它们的平均值。Program #include main() int a, b, c;printf(“Please input 3 integers: “);scanf(“%d%d%d“, printf(“The average is %.2f.n“, (a+b+c)/3.0);Output Please input 3 integers: 4 7 -19 /* Blue is input */The average is -2.67.4-4

17、编写一个程序,读取 x 和 y 的值,显示下面表达式的值:(1) yx(2)(3) yxProgram #include main() float x, y;printf(“Please input x and y: “);scanf(“%f%f“, printf(“(1) (x+y)/(x-y) = %.2fn“, (x+y)/(x-y);printf(“(2) (x+y)/2 = %.2fn“, (x+y)/2);printf(“(3) (x+y)(x-y) = %.2fn“, (x+y)*(x-y);Output Please input x and y: 3.5 4.1 /* Blue

18、 is input */(1) (x+y)/(x-y) = -12.67(2) (x+y)/2 = 3.80(3) (x+y)(x-y) = -4.56104-5 计算银行存款的本息。编写程序,输入存款金额 money、存期 year 和年利率rate,根据下列公式计算存款到期时的本息合计 sum(税前) ,输出时保留两位小数。 yeartmonesu)1(Program #include #include main() float money, rate, sum;int year;printf(“Please input the deposit money: “);scanf(“%f“,

19、printf(“Please input the deposit period: “);scanf(“%d“, printf(“Please input the annual interest rate: “);scanf(“%f“, sum=money*pow(1+rate, year);printf(“The total principal and interest is: %.2fn“, sum);Output Please input the deposit money: 2500 /* Blue is input */Please input the deposit period:

20、3 /* Blue is input */Please input the annual interest rate: 0.023 /* Blue is input */The total principal and interest is: 2676.504-6 输入圆柱的高 h 和半径 r,求圆柱体积 volume=*r2*h。Program #include #define PI 3.14main() float volume, r, h;printf(“Please input the radius of the cylinder: “);scanf(“%f“, printf(“Please input the height of the cylinder: “);scanf(“%f“, volume=PI*r*r*h;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 课件讲义

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。