选择结构程序设计习题.docx
- 文档编号:7053744
- 上传时间:2023-01-16
- 格式:DOCX
- 页数:8
- 大小:27.53KB
选择结构程序设计习题.docx
《选择结构程序设计习题.docx》由会员分享,可在线阅读,更多相关《选择结构程序设计习题.docx(8页珍藏版)》请在冰豆网上搜索。
选择结构程序设计习题
选择结构程序设计练习
1.从键盘输入一个字符型数据,若输入一个数字字符('0'-'9'),则将其转换成相应的整数显示出来;若输入其它字符,则显示出错信息。
[提示]根据字符型数据的ASCII码值是否在‘0’字符与‘9’字符之间进行判断。
使用if…else…语句。
#include"stdio.h"
intmain()
{
charch;
intdch;
printf("请输入一个字符:
\n");
scanf("%c",&ch);
printf("输入的字符是:
%c\n",ch);
if(ch>='0'&&ch<='9')
{
dch=ch-'0';
printf("%c对应的整数是:
%d\n",ch,dch);
}
else
{
printf("%c不是数字字符\n",ch);
}
}
2.编写一个程序,其功能为:
从键盘输入三个数x、y、z,判断x+y=z是否成立,若成立输出“x+y=z”的信息,否则输出“x+y!
=z”的信息。
[提示]条件判断表达式x+y==z
#include"stdio.h"
intmain()
{
floatx,y,z;
printf("请输入x,y,z:
\n");
scanf("%f%f%f",&x,&y,&z);
if(x+y==z)
printf("x+y=z\n");
else
printf("x+y!
=z\n");
}
3.编写一个程序,其功能为:
输入三个整数,输出最大数和最小数。
[提示]设置最大值变量max和最小值变量min;首先比较a,b的大小,并把大数存入max,小数存入min;然后最大值变量max和最小值变量min再与c比较,若c大于max,则max取值c,否则保持不变;如果c小于min,则min取值c,否则保持不变。
最后输出max和min的值。
使用if…else…语句、if语句以及复合语句。
#include"stdio.h"
intmain()
{
inta,b,c,max,min;
printf("请输入三个整数a,b,c:
\n");
scanf("%d%d%d",&a,&b,&c);
printf("三个整数为:
\n");
printf("a=%db=%dc=%d\n",a,b,c);
if(a>b)
{
max=a;
min=b;
}
else
{
max=b;
min=a;
}
if(c>max)max=c;
if(c printf("max=%dmin=%d\n",max,min); } 使用条件算符: x=(a>b? a: b);max=(c>x? c: x); x=(a a: b);min=(c c: x); 4.某产品生产成本c=c1+mc2,其中c1为固定成本,c2为单位产品可变成本。 当生产数量m<10000时,c1=20000元,c2=10元;当生产数量m≥10000时,c1=40000元,c2=5元;编写一个程序,其功能为: 分别计算出生产数量为6000以及25000时,总生产成本及单位生产成本。 #include"stdio.h" voidmain() { intm,c1,c2,c; printf("请输入生产数量: \n"); scanf("%d",&m); if(m<10000) { c1=20000; c2=10; } else { c1=40000; c2=5; } c=c1+m*c2; printf("生产数量=%d\n",m); printf("总成本=%d\n",c); printf("单位生产成本=%d\n",m*c2); } 5.分段函数的计算。 编写一个程序,计算下列函数: y= x x<1 2x-1 1≤x<10 3x-11 x≥10 [提示]根据输入的x值的取值,计算y的值并输出。 使用if…elseif语句以及复合语句。 #include"stdio.h" voidmain() { floatx,y; printf("请输入x: \n"); scanf("%f",&x); printf("输入x=: %f\n",x); if(x<1) { y=x; printf("y=%f\n",y); } elseif(x>=1&&x<10) { y=2*x-1; printf("y=%f\n",y); } else { y=3*x-11; printf("y=%f\n",y); } } 6.编写程序,输入三角形三边a、b、c,判断a、b、c能否构成三角形,若不能则输出相应的信息,若能则判断组成的是等腰、等边、直角还是一般三角形。 [提示]利用三角形两边之和大于第三边判断是否能够构成三角形,能够成三角形时再以等腰、等边、直角三角形的条件进行判断。 #include"stdio.h" voidmain() { floata,b,c; printf("请输入a,b,c: \n"); scanf("%f%f%f",&a,&b,&c); if(a+b>c&&b+c>a&&a+c>b) { if(a==b&&b==c&&c==a) printf("a=%fb=%fc=%f构成等边三角形! \n",a,b,c); else if(a==b||b==c||c==a) printf("a=%fb=%fc=%f构成等腰三角形! \n",a,b,c); elseif(a*a==b*b+c*c||b*b==a*a+c*c||c*c==a*a+b*b) printf("a=%fb=%fc=%f构成直角三角形! \n",a,b,c); else printf("a=%fb=%fc=%f构成一般三角形! \n",a,b,c); } else printf("a=%fb=%fc=%f不能构成三角形! \n",a,b,c); } 7.某个电力公司对其用户的收费规定如下: 用电数量收费标准 0~200x*0.5元 201~400100+(x-200)*0.65元 401~600230+(x-400)*0.8元 601以上390+(x-600)*1.0元 编写程序,对于一个输入的用电数量,计算用户的缴费额。 [提示]用if…elseif语句实现。 注意输入负数时的处理。 #include"stdio.h" voidmain() { doublex,y; printf("请输入用电数量x: \n"); scanf("%lf",&x); if(x<0) printf("输入数据有误! "); else { if(x>=0&&x<=200) y=x*0.5; elseif(x>=201&&x<=400) y=100+(x-200)*0.65; elseif(x>=401&&x<=600) y=230+(x-400)*0.8; else y=390+(x-600)*1.0; printf("x=%lfy=%lf\n",x,y); } } 8.编程设计一个简单的计算器程序,要求根据用户从键盘输入的表达式: 操作数1运算符op操作数2 计算表达式的值,指定的运算符为加(+)、减(-)、乘(*)、除(/) 例如[输入] Pleaseentertheexpression: 22.12+12.10 [输出] 22.12+12.10=34.22 #include voidmain() {floatx,y,z; charop; printf(“请输入表达式: ”); scanf(“%f,%c,%f”,&x,&op,&y); switch(op) { case‘+’: z=x+y; case‘-’: z=x-y; case‘*’: z=x*y; case‘/’: {if(y! =0)z=x/y; elseprintf(“除数为0”);} } printf(“%f%c%f=%f\n”,x,op,y,z); }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 选择 结构 程序设计 习题
![提示](https://static.bdocx.com/images/bang_tan.gif)