实验三选择结构程序设计(解答).doc
文本预览下载声明
实验三 选择结构程序设计
解答
1.改错题
(1)下列程序的功能为:输入1个字母,如果它是小写字母,则首先将其转换成大写字母,再输出该字母的前序字母、该字母、该字母的后序字母,例如:输入g,则输出FGH;输入a,则输出ZAB;输入M,则输出LMN;输入Z,则输出YZA。请纠正程序中存在错误,使程序实现其功能,程序以文件名sy3_1.c存盘。
#include
main char ch,c1,c2; printf Enter a character: ; ch getchar ;
if ch a || ch z // if ch a ch z ch- 32; c1 ch-1; c2 ch+1;
if ch A // if ch A
c1 ch+25;
else if ch Z // else if ch Z
c2 ch-25; putchar c1 ; putchar ch ; putchar c2 ; putchar \n ; 改正后的程序:
#include
main char ch,c1,c2; printf Enter a character: ; ch getchar ; if ch a ch z ch- 32; c1 ch-1; c2 ch+1; if ch A c1 ch+25; else if ch Z c2 ch-25; putchar c1 ; putchar ch ; putchar c2 ; putchar \n ; (2)下列程序的功能为:输入3个整数后,输出其中最大值。请纠正程序中存在错误,使程序实现其功能,程序以文件名sy3_2.c存盘。
#include stdio.h
main int a,b,c,max;
printf 请输入3个整数:\n ;
scanf %d%d%d,a,b,c ;
max a;
if c b if b a max c; /* c b a */
else /* b c */
if c a max b; /* b c a */
printf 3个数中最大者为:%d\n,max ; 改正后的程序:(方法1)
#include stdio.h
main int a,b,c,max;
printf 请输入3个整数:\n ;
scanf %d%d%d,a,b,c ;
max a;
if c b if c a max c; else if b a max b; printf 3个数中最大者为:%d\n,max ; 改正后的程序:(方法2)
#include stdio.h
main int a,b,c,max;
printf 请输入3个整数:\n ;
scanf %d%d%d,a,b,c ;
max a;
if b c if b a max b; else if c a max c; printf 3个数中最大者为:%d\n,max ; (3)下列程序的功能为:输入1-4月份号,输出该月份对应的英语表示法。例如,输入“3”,则输出“Mar”。请纠正程序中存在错误,使程序实现其功能,程序以文件名sy3_3.c存盘。
#include stdio.h
main char m;
printf “input the month number:\n” ;
scanf “%c”,m ;
switch m case 1:printf “Jan” ; case 2:printf “Feb” ; case 3:printf “Mar” ; case 4:printf “Apr” ; 改正后的程序:改法一
#include stdio.h
main char m;
printf input the month number:\n ;
scanf %d,m ;
switch m case 1:printf Jan ;break; case 2:printf Feb ;break; case 3:printf Mar ;break; case 4:printf Apr ; 改法二
#include stdio.h
main char m;
printf input the month number:\n ;
scanf %c,m ;
switch m case ‘1’:printf Jan ;break; case ‘2’:printf Feb ;break; case ‘3’:printf Mar ;break; case ‘4’:printf Apr ; 3.编程题
(1)编写一个程序实现如下功能:从键盘输入三个整数,
显示全部