内容发布更新时间 : 2024/12/27 0:24:49星期一 下面是文章的全部内容请认真阅读。
谭浩强c语言程序设计第三版课后习题
答案
【篇一:谭浩强--c语言程序设计(第二版)习题答案】
ss=txt>第一章
1.请参照本章例题,编写一个c程序,输出以下信息: ************************** very good!
************************** 解:
#includestdio.h void main() {
printf(**************************); printf(\\n);
printf(very good!\\n); printf(\\n);
printf(**************************); }
2.编写一个c程序,输入a、b、c三个值,输出其中最大值。解: #includestdio.h void main() {
int a,b,c,max;
printf(请输入三个数a,b,c:\\n); scanf(%d,%d,%d,a,b,c); max=a;
if(maxb) max=b; if(maxc) max=c;
printf(最大数为: %d,max); }
第二章
1.假如我国国民生产总值的年增长率为10%,计算10年后我国国民生产总值与现在相比增长多少百分比。计算公式为p=(1+r)^n,r为年增长率;n为年数;p为与现在相比的百分比。 解:
#includestdio.h
#includemath.h void main() {
double p, r=0.1, n=10; p=pow((1+r), n); printf(%lf\\n, p); }
3.请编程序将china译成密码,译码规律是用原来字母后面的第4个字母代替原来的字母。例如,字母a后面第4个字母是e, e代替a。因此,china应译为glmre。请编一程序,用赋初值的方法使cl、c2、c3、c4、c5五个变量的值分别为c、h、i、n、a,经过运算,使c1、c2、c3、c4、c5分别变为g、l、m、r、e,并输出。 解:
#include stdio.h void main() {
char c1=c,c2=h,c3=i,c4=n,c5=a; c1+=4; c2+=4; c3+=4; c4+=4; c5+=4;
printf(密码是%c%c%c%c%c\\n,c1,c2,c3,c4,c5); }
第三章
3.用下面的scanf函数输入数据,使a=3, b=7, x=8.5, y=71.82, c1=a, c2=a。问在键盘上如何输入? 解:
#includestdio.h void main() {
int a, b; float x, y; char c1, c2; scanf(a=%d, b=%d, a, b); scanf( x=%f, y=%e, x, y);
scanf( c1=%c, c2=%c,c1, c2); }
a=3, b=7
x=8.5, y=71.82 c1=a, c2=a
5. 设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf输入数据,输出计算结果,输出时要求文字说明,取小数点后2位数字。请编程序。 解:
#includestdio.h void main() {
float r,h,c1,sa,sb,va,vb; scanf(%f,%f,r,h); c1=2*3.14*r; sa=3.14*r*r; sb=4*sa;
va=4*3.14*r*r*r/3; vb=sa*h;
printf(c1=%.2f\\n,c1);
printf(sa=%.2f\\nsb=%.2f\\nva=%.2f\\nvb=%.2f\\n,sa,sb,va,vb); }
6. 输入一个华氏温度,要求输出摄氏温度。公式为c=5(f-32)/9,输出要求有文字说明,取位2小数。 解:
#includestdio.h void main() {
float f,c;
scanf(%f,f); c=5*(f-32)/9;
printf(c=%.2f,c); }
7. 编程序,用getchar函数读入两个字符给c1、c2,然后分别用putchar函数和printf函数输出这两个字符。思考以下问题: (1)变量c1、c2应定义为字符型或整形?或二者皆可?
(2)要求输出c1和c2值的ascii码,应如何处理?用putchar函数还是printf函数?
(3)整形变量与字符变量是否在任何情况下都可以互相代替?如: char c1,c2;与int c1, c2; 是否无条件地等价? 解:
#includestdio.h void main()