C语言程序设计第三版习题库答案 下载本文

C语言程序设计(第三版)习题库

1、设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf输入数据,输出计算结果,输出时要求文字说明,取小数点后两位数字。请编程序。 #include main(){

float r,h,C1,Sa,Sb,Va,Vb; scanf(__”%f”__,&r); scanf(”%d”,__&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(___”Cl=%.2fSa=%.2fSb=%.2fVa=%.2fVb=%.2f”,Cl,Sa,Sb,Va,Vb); }

2、输入一个华氏温度,要求输出摄氏温度。公式为 c=5(F-32)/9 输出要求有文字说明,取位2小数。 #include main(){ float F,c; scanf(\

____c=5*(F-32)/9______; printf(\}

x?1?x?1?x?10 写一程序,输入x值,输出y值。 3、有一函数:y??2x?1?3x?11x?10?#include main(){ int x,y;

printf(\输入x:\scanf(\

if(x<1) { /* x<1 */

y=x;

printf(\

} else if (____x<10_______){ /* 1≤x-10 */

_____y=2*x-1_______;

printf(\} else{ /* x≥10 */

y=3*x-11;

printf(\main() {

int x,y;

scanf(\ if(x<1)

{ y=x;} { y=2*x-1;} { y=3*x-11;}

else if(x>=1 && x<10) else

printf(\}# include \main() {

int x,y;

scanf(\ if(x<1)

{ y=x;} { y=2*x-1;} { y=3*x-11;}

else if(x>=1 && x<10) else

printf(\}# include \main() {

int x,y;

scanf(\ if(x<1)

{ y=x;} { y=2*x-1;} { y=3*x-11;}

else if(x>=1 && x<10) else

printf(\}scanf(\ if(x<1) {

int x,y;

scanf(\ if(x<1)

y=x; { y=x;} { y=2*x-1;}

{ y=3*x-11;} # include \ else if(x>=1 && x<10) else main()

else if(x>=1 && x<10)

y=2*x-1; y=3*x-11; else

printf(\},y); } }

4、给定一个不多于5位的正整数,要求:① 求它是几位数;②按逆序打印出各位数字。例如原数为321,应输出123。

#include main(){

long int num,m=0; int i=0; scanf(\ while(num>0){ i++; /*统计长度*/ m=m*10+num; num =num/10; }

printf(\数字长度为:%d\ printf(\逆序数字为:%d\\n\}

5、以下程序实现的功能:求三个数的最大值

#include

main(){

int a,b,c,max;

scanf(\ if(a>b){

if(a>c) max=a; else max=c; } else{

if(b>c) max=b; else }

printf(\}

#include main(){

int x,y,z,t=0;

scanf(\ if(x>y)

{t=y;y=x;x=t;} if(x>z)

{t=z;z=x;x=t;}

max=c;