c语言编程陈刚课后解答。
c语言程序设计第三版指导答案
附录f课后问题参考答案
练习1
1.1填空
1.功能
2.Main函数main();主函数main() 3..Main函数main() 4..函数头;功能体5。{;}
6.序列结构;选择结构;环状结构7..c;c;。obj。可执行程序的扩展名
1.2思考问题
1.答:结构化程序设计(Structured programming)是指为了使程序具有合理的结构并保证程序的正确性,如何设计程序的一套原则。序列结构,选择结构,循环结构。
2.答:算法是对解决特定问题的步骤的描述。计算机算法的表达工具通常采用以下方法:①用自然语言表达算法;(2)用流程图来表示算法;③用伪代码表示算法;④用编程语言表达算法。
3.省略4。省略5。省略1.3编程题1。回答:
#include "stdio.h" main()
{ float a=10,b=20,h=5,s;s =(a b)* h/2;
printf("s=%f ",s);}
2.答:
#包含“stdio.h”
主()
{ printf(" * * * * * * * * * * * * * * * * * * * * * * * * * * * ");printf(" * hello world * ");printf(" * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ");}
练习2
2.1选择题
DBDCA DCABB CA
2.2填空
1.2.000000
2.1;0.500000
3.9;2 4.6 5.100;d 6。(1)20
(2)0
(3)60 7.(1)10;6;四
(2)6;9;15
(3)3;60;83
8.55或“7”
9 . x = 4;y = 6;z = 3;m=463
2.3改正错题(略)
练习3
3.1选择题
BDABC ADCAC BBA
3.2填空
1.3 2.261 3.10
4.2, 1;交换a和b的值5.6.6 6.003 7.7
8.5.0,4,c =回车
9.i=10,j = 20回车
10.(1)65 (2)65,A (3)3.14,123.46
4 3.141600 e 000 1.234560 e 002 5 8765.432100 6 8.765432 e 003
11 . a = 2b = 5x = 8.8y = 76.34 C1 = 65 C2 = 97 12。% d/% d;%d/%d=%.2f\n
3.3改错题(略)3.4编程题
1.答:
#include "stdio.h" main() {
int x,y;
scanf("%d%d ",x,y);printf(" \ t \ tx \ ty \ n ");
Printf("十进制数\t%d\t%d\n ",x,y);Printf("八进制数\t%o\t%o\n ",x,y);Printf("十六进制数\t%X\t%x\n ",X,y);}
2.答:
#include "stdio.h" main() {
char ch
Printf("请输入大写字母");scanf("%c ",ch);
Printf("大写字母是%c\n ",ch);Printf("它的主角是%c\n ",ch-1);Printf ("it后跟%c\n ",ch 1);}
3.答:
#include "stdio.h" main() {
int x,a,b,c,y;
Printf("请输入一个三位数的整数\ n ");scanf("%d ",x);a = x/100;
b =(x-a * 100)/10;c=x;
y = c * 100 b * 10 a;
Printf("反向输出该整数:%d\n ",y);} }
4.答:
#include "stdio.h" main()
{ int hour
双薪,salaryday
scanf("%d,%lf ",小时,工作日);
工资=小时*工资日-小时*工资日* 0.1;
printf("%8.2lf\n ",薪金);}
5.答:
#include "stdio.h" main() {
int a,b,c,t;
Printf("请输入三个整数\ n ");scanf("%d%d%d ",a,b,c);
Printf("交换前,a=%d,b=%d,c=%d\n ",a,b,c);t = a;a = c;c = b;b = t;
Printf ("a=%d,b=%d,c=%d\n ",a,b,c交换后);}
练习4
4.1选择题
BADDD ACBBB BA
4.2填空
1.1
2.(1)a0 || b0
(2)x0 x=10 (3)a==1.5 b==1.5 c==1.5
(4)pa || pb || pc
3.(1)0 (2)1 (3)1 (4)0 (5)1
4.c=1 5。-4 6.1 7.5, 0, 3 8.5 9.123
10.(cvb = = ' Y ' | | cvb = = ' Y ')(work = 3 | | college = = ' Y ' | | college = = ' Y ')年龄=35
4.3改错题(略)4.4编程题
回答
#包含“stdio.h”
#include "math.h" main() {
双a,b,c,p,区;
scanf("%lf%lf%lf ",a,b,c);
Printf("三角形的三条边分别是:%。llf,%.1lf,%.1lf\n ",a,b,c);if(a BCA cbb ca){ p =(a b c)/2;
area = sqrt(p *(p-a)*(p-b)*(p-c));
Printf("三角形的面积是%.2lf\n ",area);}否则
Printf("不能形成三角形\ n ");}
2.答:
#include "stdio.h" main()
{ int x,y;
scanf("%d,%d ",x,y);如果(x*x y*y1000)
printf("%d\n ",(x * x y * y)/100);其他
printf("%d\n ",x y);}
3.答:
# include " stdio . h " # include " math . h " main()
{双x,y;
scanf("%lf ",x);if(x-2)y = x * x-sin(x);else if (x=2) y=pow(2,x)x;else y = sqrt(x * x x 1);
printf("x=%.2lf y=%.2lf\n ",x,y);}
4.答:
#include "stdio.h" main()
{龙哥,石,钱,万,x;scanf("%ld ",x);wan = x/10000;
qian=x000/1000;shi=x0/10;
ge=x;
if(ge = =石湾= =钱)/* bits等于一万位,十位等于一千位*/printf("此数为一汇文\ n ");其他
printf("本号不是汇文\ n ");
}
5.答:
#include "stdio.h" main()
{浮点p,w,s,d,f;
scanf("%f,%,%f ",p,s,w);if (s3000) d=0.15否则if(s = 2000)d = 0.1;else if(s = 1000)d = 0.08;else if(s = 500)d = 0.05;else if(s = 250)d = 0.02;else d = 0 f = p * w * s *(d);printf("%f ",f);}
6.答:
#include "stdio.h" main()
{ int年,钱;char x;
Printf("是我们的产品吗(y/n):");scanf("%c ",x);
if(x=='y'||x=='Y ')
{printf("产品使用寿命:");scanf("%d ",年份);
如果(年=1)钱= 0;
else if(year 8)money = 50;else money = 100
Printf("产品保修金额为:%d\n ",货币);
}
其他
{钱= 200;
Printf("不是我们的产品,产品保修金额是:%d\n ",钱);} }
7.答:
#include "stdio.h" main()
{ int money,num1,num2
Printf("请输入取款金额(≤2000):");scanf("%d ",money);
If(money2000) printf("请输入取款金额≤2000!\ n ");else if(moneyP = = 0){ num 1 = money/100;num2=(货币-num 1 * 100)/50;Printf ("100元:%d张\n ",num 1);Printf("需要支付50元:%d张\n ",num 2);} else printf("输入的金额必须是50的倍数!\ n ");}
练习5
5.1选择题
DBCB
5.2填空
1.2 0 2.333
3.(1) i10或i=9 (2)j%3!=0
4.(1) flag * (float) k/(k1)或1.0 * flag * k/(k1) (2) flag =-flag5。(1) max = X。
(2)x!=-1 (3)scanf("%d ",x)
6.(1) X = 9或x10
(2)y=9-x
5.3改错题(略)5.4编程题
1.答:
(1)对于循环,其他省略
#包含“stdio.h”
主()
{ int i,s = 0;
for(I = 1;i = 100I)s = I * I;
printf("%d\n ",s);}
(2)对于循环,其他省略
#include "stdio.h" main()
{ int i=1,p = 1;双s = 1;做{
s = 1.0/p;p * = I;
} while(1.0/p1e-6);printf("%lf ",s);}
2.答:
#include "stdio.h" main()
{ int m,n,t,a,b;
scanf("%d,%d ",m,n) if (mn)
{ t = m m = n n = t } a = mb = n;t=m%n while(t)
{ m = n n = t t = m % n} printf("%d ",n);}
3.答:
#include "stdio.h" main()
{ int x,y,s = 1;
scanf("%d,%d ",x,y) for( y0 y - )s*=x
printf("%d,%d,% d \ n " ,s,s/10,s/100);}
4.答:
#include "stdio.h" main()
{ int x,y,z;
for(x = 1 x20x)for(y = 1 y33 y){ z = 100-x-y
if((z % 3)= = 0(5 * x 3 * y z/3)= = 100)printf(" x = % d,y=%d,z=%d\n ",x,y,z) } }
5.答:(甲)
#include "stdio.h" main()
{ int j,k
for( j=1 j=4 j)
{ for(k = 1;k = j;k)printf(" ");printf("****") printf("\n") } }
(二)
#include "stdio.h" main()
{ int j,k
for( j=1 j=4 j)
{ for(k = 1;k = j;k)printf(" ");for(k = 1k = 2 * j-1k)printf(" * ")printf(" \ n ")} }
6.答:
程序分析:用于100到999之间的循环控制,将每个数分解成一、十、百。
#include stdio.h main() { int i,j,k,n;printf("水花'号是:");for(n = 100;n1000n){ I = n/100;/*分解成几百个*/j = n/10;/*分解成十位数*/k = n;/*分解单位*/if(n = = I * I * IJ * J * JK * K * K){ printf(" %-5d ",n);} } printf(" \ n ");}
7.答:
# include stdio . h main(){ int x;for(x = 1000;x = 3;x - ) if(x%3==1x%5==2x%7==3) {
Printf("本校学生人数为:%d \n ",x);打破;} }
8.答:
#include stdio.h main() { int x=12,I = 1;while(1)
{ if((x 20 I)= = 2 *(x I))break;我;} printf("小明的妈妈%d年后比小明大一倍\n ",I);Printf("当时小明的年龄是%d,小明妈妈的年龄是%d \n ",x i,x 20i);}
练习6
6.1选择题
DBCCB BDC
c语言程序设计教程(第三版)
278
6.2填空
1.c 2.60 3.1000 10 4.16
6.3编程问题
1.答:
# include " stdio . h " # include " math . h "
#定义F(a) a*a sqrt(3*a*a 2*a 1) main()
{ float x,f;
scanf("%f ",x);
F = 4.5/F(exp(x))F(cos(x))F(sqrt(x))/F(x * x)printf(" % F \ n ",F);}
练习7
7.1选择题
BCADA CCCDA BCBDB
7.2填空
1.(1)234510010(3)快速c
(4)10000 01000 00100 00010 00001 (5)语言
(6)语言编程2。(1)j =2 (2)a=0
a=6
a=1
a=1
6.源程序:
#包含" stdlib.h "
#包含“time.h”
#定义M 5
#定义N 7
主()
{int a
最后更新于 2023-10-14 03:32:53 并被添加「」标签,已有 位童鞋阅读过。
本站使用「署名 4.0 国际」创作共享协议,可自由转载、引用,但需署名作者且注明文章出处
相关文章