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

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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

一、实验目的与要求

1. 理解C 语言表示逻辑量的方法,学会正确使用逻辑运算符和逻辑表达式。

2. 掌握利用if 结构实现选择结构的方法。

3. 掌握利用switch 结构实现多分支选择结构。

4. 结合程序掌握一些简单的算法,学习调试程序

5. 实验4学时

二、实验内容

1.程序改错题

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

=x x

==)(x f y

)100(≠x x

输入输出示例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("Enter x: \n");

scanf("=%f", x);

if (x = 100) {

y = 1/sqrt(x)

}

else (x != 100) {

y = x;

}

printf("f(%.2f) = %.1f\n",x,y);

}

答:

#include

#include

void main(void)

{

double x,y;

printf("Enter x:\n");

scanf("%lf",&x);

if (x=100)

y = 1/sqrt(x);

else

y= x;

printf("f(%.2lf)=%.1lf\n",x,y);

}

2.一般编程题

编程题1

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

答:

#include

void main()

{

int a,b,c;

printf("请输入三个整数:");

scanf("%d %d %d",&a,&b,&c);

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",a);

printf("最大值为:%d\n",c);

}

编程题2

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

)0(12)1(2<+

++x x x x =)(x f

)0(≥x x

输入输出示例(共运行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()

{

double x,y;

printf("Enter x:\n");

scanf("%lf",&x);

if (x<0)

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

else

y=sqrt(x);

printf("f(%.2f)=%.2f\n",x,y); }

编程题3 有一函数:

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("Enter x:\n");

scanf("%lf",&x);

if (x>0&&x<10)

y=x+1;

else if (x==0)

y=x-1;

else if (x>-5&&x<0)

y=x;

printf("f(%.2f)=%.2f\n",x,y);

}

编程题4

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

答:

#include

#include

void main()

{

double x,y,z;

printf("输入上衣x件,裤子y件:\n");

scanf("%lf%lf",&x,&y);

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",z);

}

编程题5

编写程序实现:输入一个整数,判断它能否被3 、5 、7整除,同时输出如下信息。

相关文档
最新文档