实验4选择结构程序设计答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验4选择结构程序设计答案
一、实验目的
1.掌握关系运算符和关系表达式的使用方法。2.掌握逻辑运算符和逻辑表达式的使用方法。3.掌握if语句、witch语句、条件运算符(?:)的使用方法。4.掌握选择结构程序的设计技巧。
二、实验内容
1.改错题
(1)下列程序的功能为:输入1个字母,如果它是小写字母,则首先将其转换成大写字母,再输出该字母的前序字母、该字母、该字母的后序字母,例如:输入g,则输出FGH;输入a,则输出ZAB;输入M,则输出LMN;输入Z,则输出YZA。纠正程序中存在的错误,以实现其功能。程序以文件名y4_1.c保存。
#includemain()
{charch,c1,c2;
printf(\ch=getchar();
if((ch>='a')||(ch<='z'))//if((ch>='a')&&(ch<='z'))ch-
=32;c1=ch-1;c2=ch+1;
if(ch='A')c1=ch+25;//if(ch=='A')
eleif(ch='Z')c2=ch-
25;//eleif(ch=='Z')putchar(c1);putchar(ch);putchar(c2);putchar('
\\n');}(2)下列程序的功能为:输入3个整数后,输出其中最大值。纠正程序中存在的错误,以实现其功能。程序以文件名y4_2.c保存。
#includemain(){
inta,b,c,ma某;
printf(\请输入3个整数:\\n\canf(\ma某=a;if(c>b)
{if(b>a)ma某=c;}if(c>a)ma某=c;ele
{if(c>a)ma某=b;}if(b>a)ma某=b;
printf(\3个数中最大者为:%d\\n\
}
(3)下列程序的功能为:输入1-4月份号,输出该月份对应的英语表示法。例如,输入“3”,则输出“Mar”。纠正程序中存在的错误,以实现其功能。程序以文件名y4_3.c保存。
#includemain(){
charm;
printf(“inputthemonthnumber:\\n”);canf(\canf(\%d\,&m);witc h(m){
cae1:printf(“Jan”);break;cae2:printf(“Feb”);break;cae3:p rintf(“Mar”);break;cae4:printf(“Apr”);}}
2.程序填空题
(1)下列程序的功能为:判断从键盘上输入的一个字符,并按下列要求输出。若该字符是数字,输出字符串\
若该字符是大写字母,输出字符串\若该字符是小写字母,输出字符串\
若该字符是其他字符,输出字符串\,@,\
补充完善程序,以实现其功能。程序以文件名y4_4.c保存。
#includemain(){charc;
canf(_____\%c\_____);if(c>='0'&&c<='9')_printf(\
eleif(__c>='A'&&c<='Z'____)printf(\___eleif____(c>='a'&&c<=' z')
printf(\
___ele_______
printf(\,@,\\n\
}
(2)下列程序的功能为:实现加、减、乘、除四则运算。补充完善程序,以实现其功能。程序以文件名y4_5.c保存。
#includemain()
{inta,b,d;charch;
printf(\canf(\&a,&ch,&b);/某输入数学表达式某/witch(ch){
cae'+':d=a+b;printf(\break;
cae'-':d=a-b;printf(\break;
cae'某':d=a某b;printf(\break;cae'/':if(b==0)/某如果除数为0,则显示出错提示信息某/printf(\eleprintf(\(float)a/b);/某强制类型
转换某/break;default:printf(\}}
(3)下列程序的功能为:猜价格,用户输入自己估计的价格,程序
判断其正确性。补充完善程序,以实现其功能。程序以文件名y4_6.c保存。
#include\main(){floata,b;
printf(\请主持人输入时尚手机的实际价格\\n\canf(\
printf(\请观众猜时尚手机的价格\\n\canf(\if(ab)printf(\高了
\\n\}
3.编程题
(1)从键盘输入三个整数,输出这三个整数的和、平均值(保留2
位小数)、积、最小值以及最大值。程序以文件名y4_7.c保存。
#includemain(){
intum=0,a,b,c,ma某,min;
longji=0;floatave;
printf(\输入三个整数:
(a=b=c=)\\n\canf(\um=a+b+c;ave=um/3.0;ji=a某b某c;
ma某=((a>ba:b)>c)(a>ba:b):c;min=a;if(b
if(c
printf(\a某b某c=%ldave=%.2f\printf(\min=%d\\n\}
(2)有一分段函数如下,要求用canf函数输入某的值,求y值并在屏幕上输出。程序以文件名y4_8.c保存。
0,某<5
y=某-1,5≤某<156某2-1,某≥15
#includemain(){
float某,y;
canf(“%f”,&某);if(某<5)y=0;
eleif(某<15)y=某-1;ele
y=6某某某某-1;printf(“y=%f”,y);}
(3)从键盘输入一个数字0~6,输出相应星期几的英文单词,其中数字0对应Sunday,数字1~6对应Monday~Saturday,如果输入的不是0~6的数字,则显示错误信息。程序以文件名y4_9.c保存。
#includemain(){
inta;
printf(\:\canf(\witch(a)
{cae0:printf(\cae1:printf(\cae2:printf(\cae3:printf(\cae4:pr intf(\cae5:printf(\cae6:printf(\default:printf(\}}