C语言程序设计基础教程 - 习题答案

D)在C程序中,%是只能用于整数运算的运算符

2.3编程题

2.2.1 编写一程序,求出给定半径r的圆的面积和周长,并输出计算结果。其中,r的值由用户输入,用实型数据处理。

#include #define PI 3.14159 void main() {

float r,c,s;

printf(\半径 \ scanf(\ c=2*PI*r; s=PI*r*r;

printf(\周长为%5.2f,面积为%5.2f\\n\}

2.2.2 已知华氏温度和摄氏温度之间的转换关系是:C=5/9*(F-32)。编写一程序,将用户输入的华氏温度转换为摄氏温度,并输出结果。

#include void main() {

float c,f;

printf(\华氏温度 \ scanf(\ c=5.0/9*(f-32);

printf(\华氏温度为%5.2f,摄氏温度为%5.2f\\n\}

习 题 三

3.1 填空题

3.1.1 程序的三种基本结构是 顺序 、 选择 、 循环 。 3.1.2 执行( a=3.0+5,a*4 ),a+=-6; 变量a 及表达式的值分别为 2.0,2.0 3.1.3 下列语句被执行后的执行结果是 1\\abc\\def 。 int a=1;

printf (“%d\\\\%s\\\\%s”,a,”abc”,”def”);

3.1.4 getchar( ) 函数的作用是 从键盘上接收一个字符 。 3.1.5 运行以下程序后,用户输入123456abc,输出结果为 123,45,6 。

void main() { int a,b; char c;

scanf (\ printf(\ }

3.1.6 下面程序的输出结果是 1112 。

# include void main( ) { int i=10;

{ /* int i=20; */ i++;

printf (“%d”,i ++); }

printf (“%d\\n”,i ); }

3.1.7 下面程序运行后,从键盘输入30,则程序的输出结果是 a=31,Ha=1f,Oa=37 。

void main () { int a ;

scanf(”%d”, &a ); a++;

printf (“a=%d,Ha=%x,Oa=%o”,a,a,a); } 3.1.8 下面程序的输出结果是 a=-3 b=?D?

“END” 。

void main ( ) { int a,b=68; a=-3;

printf(“\\ta=%d\\n\\tb=\\?%c\\?\\n\\”end\\”\\n”,a,b); }

3.1.9 下面程序的输出结果是 13.7000000 。

# include # include main()

{ int a=1,b=4,c=2; float x=10.5,y=4.0,z;

z=(a+b)/c+sqrt((double)y)*1.2/c+x; printf(“%f\\n”,z); }

3.1.10 下面程序运行后,若输入a=2,b=3结果是x1= 6.00

x2= 0.67 。

void main( ) { float a ,b ,x1, x2 ;

scanf (“a=%f,b=%f“ ,&a ,&b ) ; x1=a*b ; x2=a/b ;

printf (“x1=%5.2f \\nx2=%5.2f \\n” ,x1,x2 ); }

3.2 选择题

3.2.1 指出下面正确的输入语句是( B )。

A) scanf (“a=b=%d”,&a,&b); B) scanf (“a=%d,b=%f”,&m,&f ); C) scanf (“<”,c); D) scanf (“%5.2f”, &f);

3.2.2 执行scanf (“%d%c%f”,&a,&b,&c) 语句,若输入1234a12f56 则变量a,b,c的值为

( C )。

A) a=1234 b=?a? c=12.56 B) a=1 b=?2? c=341256 C) a=1234 b=?a? c=12.0 D) a=1234 b=?a12? c=56.0

3.2.3 执行scanf (“a=%d,b=%d”,&a,&b) 语句, 若要使变量a和b的值分别为3和4, 则

正确的输入方法为( C )。

A) 3 ,4 B) a:3 b: 4 C) a=3,b=4 D) 3 4

3.2.4 设b=1234 , 执行printf(“%%d@%d”,b) 语句,输出结果为: ( D )。

A) 1234 B) 34 C) %%d@1234 D) %d@1234 3.2.5 若x是int型变量,y是float型变量,所用scanf语句为 scanf(“x=%d,y=%f”,&x,&y);

正确的输入操作是( A )。

A) x=10,y=66.6<回车> B) 10 66.6<回车>

C) 10<回车>66.6<回车> D) x=10<回车>y=66.6<回车> 3.2.6 设a,b均是int型变量,则以下不正确的函数调用为( D )。

A) getchar(); B) putchar(?\\108?); C) scanf(“%d,-”,&a,&b); D) putchar(?\\?); 3.2.7 下列程序的执行结果是( C )。

# include void main( ) { int a=5;

float x=3.14; a*=x*(?E?-?A?);

printf (“%f\\n”,(float)a); }

A) 62.800000 B) 62 C) 62.000000 D) 63.000000 3.2.8 若输入2.50 ,下列程序的执行结果是( A )。

void main( ) { float r , area ;

scanf (“ %f ” , & r ) ;

printf (“ area=%f \\n” , area=1/2*r*r ) ; }

A) 0 B) 3.125 C) 3.13 D) 程序有错

3.3 编程题

3.3.1 编写程序,从键盘上输入2个整数给变量a和b,交换a、b值然后输出。

//参考程序

#include void main( ) { int a,b,temp;

scanf(\

printf(\交换前: a=%d,b=%d\\n\ temp=a;a=b;b=temp;

printf(\交换后: a=%d,b=%d\\n\}

3.3.2 试编写一个程序,任意输入一个小写字母,分别按八进制、十进制、十六进制、

字符格式输出。

//参考程序: #include void main()

{ char c;

printf(\请输入1个小写字母:\\n\ scanf(\

printf(\八进制: %o\\n十进制: %d\\n\ printf(\十六进制: %x\\n字符: %c\\n\}

3.3.3 输入一个华氏温度,要求输出摄氏温度,输出要有文字说明,取2位小数。公式

c?为:

5?F?32?9

//参考程序:

# include void main() { float c,f;

printf(“请输入一个华氏温度:\\n”); scanf(“%f”,&f); c= 5.0/9*(f-32);

printf(“华氏温度F=%.2f\\n”,f); printf(“摄氏温度c=%.2f\\n”,c); } 3.3.4 设圆半径r=3,圆柱高h=4,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体

积。用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字。请编程序。

//参考程序:

# include # define PI 3.1415926 void main() { float r,h,c,s1,s2,v1,v2;

printf(“请输入圆半径,圆柱高:”);

scanf(“%f,%f”,&r,&h);

c=2*PI*r; s1=PI*r*r; s2=4*PI*r*r; v1=4/3*PI *r*r*r; v2=s1*h; printf(“r=%.2f,h=%.2f\\n”,r,h);

printf(“圆周长=%.2f,圆面积=%.2f\\n”,s1,s2); printf(“圆体积=%.2f,圆柱体积=%.2f\\n”,v1,v2);

}

习 题 四

4.1 填空题

4.1.1 表示条件:10

达式为 a 。 4.1.3 若已知a=10,b=20,则表达式!ab>c的值是 0 。

联系客服:779662525#qq.com(#替换为@)