《C语言程序设计》(江宝钏著)实验三答案 联系客服

发布时间 : 星期一 文章《C语言程序设计》(江宝钏著)实验三答案更新完毕开始阅读e1326d0eb307e87101f6965a

3.5 实验三 选择结构程序设计

一、实验目的与要求

1. 理解C语言表示逻辑量的方法,学会正确使用逻辑运算符和逻辑表达式。 2. 掌握利用if结构实现选择结构的方法。 3. 掌握利用switch结构实现多分支选择结构。 4. 结合程序掌握一些简单的算法,学习调试程序 5. 实验4学时

二、实验内容

1.程序改错题

改正下面程序中的错误。输入实数x,计算并输出下列分段函数f(x)的值(保留1位小数)。

1x(x?100)

y?f(x)? x(x?100)

输入输出示例1(改正后程序的运行结果)

Enter x:100 f(100.00)= 0.1

输入输出示例2(改正后程序的运行结果)

Enter x:23 f(23.00)= 23.0

源程序(有错误的程序)

#include #include void main(void) {

double x;

printf(\ x: \\n\ scanf(\ if (x = 100) { y = 1/sqrt(x) }

else (x != 100) { y = x; }

printf(\}

答:

#include #include void main(void) {

double x,y;

printf(\ x:\\n\ scanf(\ if (x=100) y = 1/sqrt(x); else y= x;

printf(\ }

2.一般编程题

编程题1

输入任意三个整数a,b,c,求3个数中的最大值和最小值。

答:

#include void main() {

int a,b,c;

printf(\请输入三个整数:\ scanf(\ if (a>=b) t=a,a=b,b=t; if (a>=c) t=a,a=c,c=t; if (b>=c) t=b,b=c,c=t;

printf(\最小值为:%d\\n\ printf(\最大值为:%d\\n\}

编程题2

输入x,计算并输出下面分段函数f(x)的值(保留2位小数)。请调用sqrt函数求平方根,调用pow函数求幂。

2 (x?1)?2x?1x(x?0)

f(x)?

x(x?0)

输入输出示例(共运行3次)

Enter x:10 f(10.00) = 3.16 Enter x:-0.5 f(-0.50) = -2.75 Enter x:0 f(0.00) = 0.00 成本 答:

#include #include void main() { 编程题3

double x,y;

printf(\ x:\\n\scanf(\if (x<0)

y=pow(1+x,2)+2*x+1/x; else y=sqrt(x);

printf(\

}

有一函数:

x (-5

y= x-1 (x=0) x+1 (0

编写程序,要求用scanf函数输入x的值,输出y的值。 具体要求如下:

(1)用if语句实现分支,自变量和函数值均用实数类型。 (2)自变量用scanf函数输入,给一些输入提示。

(3)运行程序,输入x的值(分别为-5

#include #include void main() { double x,y; printf(\ x:\\n\

scanf(\ if (x>0&&x<10) y=x+1; else if (x==0) y=x-1;

else if (x>-5&&x<0) y=x;

printf(\}

编程题4

某服装店经营成套服装的买卖,同时也允许单件销售。若一次购买不少于70套,则每套90元;若不足70套,则每套110元;只买上衣每件70元;只买裤子每条60元。请编写程序假设用户买入x件上衣和y条裤子,请编写程序计算相应的应付款是多少?

答:

#include #include void main() { double x,y,z; printf(\输入上衣x件,裤子y件:\\n\ scanf(\ if (x>=y&&y>=70) z=90*y+70*(x-y); else if (y>=x&&x>=70) z=90*x+60*(y-x); else if (x>y&&y<70) z=110*y+70*(x-y); else if (y>x&&x<70) z=110*x+60*y-x; printf(\应付:%.3f(元)\\n\ }

编程题5

编写程序实现:输入一个整数,判断它能否被3 、5 、7整除,同时输出如下信息。 (1) 能同时被3 、5 、7整除; (2) 能同时被其中的哪二个数整除; (3) 能被其中的哪一个数整除;

(4) 不能被3 、5 、7任一个数整除。 答:

#include void main() { int x,a,b,c,d; scanf(\ a=x%3;