C语言基础-----分支语句if esle switch case
2013-03-05 20:28
337 查看
4.1.1 任务描述------fun1()
写一个程序,从键盘上接收两个整数,输出这两个整数中值大的一个。
void fun1()
{
int x=0,y=0,max=0;
printf("请输入两个数:\n");
scanf("%d,%d",&x,&y);
max=x>y?x:y;
printf("%d和%d,值大的是:%d",x,y,max);
}
4.3.1 任务描述---fun3()
写一个程序,接收两个整数a和b,并判断a是否能被b整除,输出判断结果。
void fun3()
{
int x=0,y=0;
printf("请输入两个数:\n");
scanf("%d,%d",&x,&y);
if(x%y==0)
{
printf("%s","可以整除");
}
else
{
printf("%s","可以整除");
}
}
4.4.1 任务描述----fun4()
写一个程序,接收两个数字,判断这两个数字的乘积是否大于等于5000,
如果大于则告诉用户大于5000,如果相等则告诉用户等于5000,否则告诉用户小于5000。
void fun4()
{
int x=0,y=0;
printf("请输入两个数:\n");
scanf("%d,%d",&x,&y);
if(x*y>5000)
{
printf("乘积大于5000");
}else
if(x*y==5000)
{
printf("乘积等于5000");
}
else
{
printf("乘积小于5000");
}
}
4.5.1 任务描述----fun5()
银行的自动取款机大概有如下几种操作:存款、取款、查询余额、转账等几种功能。要求用switch语句进行模拟其操作。
由于在这里没有具体的按钮,可以使用数字来模拟用户的选择。
例如:可以提示用户"存款请按1"、"取款请按2"、"查询余额请按3"、"转账请按4"、"退出请按5"。来让用户进行选择。
而具体的操作,可以直接在屏幕上输出操作过程即可。例如:当用户选择1后,可以直接在屏幕上打印“正在进行存款操作.”
即可,其它操作类似。
void fun5()
{
int Num=0;
char str [50];
printf("请选择服务种类\n存款请按1 \n 取款请按2 \n 查询余额请按3 \n 转账请按4 \n 退出请按5\n");
scanf("%d",&Num);
switch (Num) {
case 1:
strcpy(str,"正在进行 存款 操作!");// strcpy() 方法的使用,需调用 <String.h>
break;
case 2:
strcpy(str,"正在进行 取款 操作!");
break;
case 3:
strcpy(str,"正在进行 查询余额 操作!");
break;
case 4:
strcpy(str,"正在进行 转账 操作!");
break;
case 5:
strcpy(str,"正在进行 退出 操作!");
break;
default:
strcpy(str,"请输入正确指令!");
break;
}
puts(str);
}
4.6.1 作业任务-----fun6()
从键盘上接收一个字符,判断它到底是哪种字符:数字,小写字母,大写字母,其他字符。
void fun6()
{
char c='0';
char str[20];
printf("请输入一个字符:\n");
c=getchar();
if(c>'0' && c<'9')
{
strcpy(str,"这个字符是数字\n");
}else
if(c>'a' && c<'z')
{
strcpy(str,"这个字符是字母\n");
}else
{
strcpy(str,"这个字符是其他字符\n");
}
puts(str);
}
4.7.1 作业任务---fun7()
写一个程序,能够判断从键盘上输入的年份是否是一个闰年。
void fun7()
{
int year=0;
printf("请输入年份,例如2004 2012 \n");
scanf("%d",&year);
if(year%400==0 || year%4==0&&year%400!=0)
{
printf("这个年份是闰年");
}else
{printf("这个年份视平年");
}
}
4.8.1 作业任务---fun8()
写一个程序,接收一个数字,判断它是否能同时被2和3整除
void fun8()
{
int Num =0;
printf("请输入一个数:\n");
scanf("%d",&Num);
if(Num%3==0 && Num%2==0)
{
printf("能 同时被2和3整除");
}else
{
printf("不能 同时被2和3整除");
}
}
5.1.1作业任务
写出下面各逻辑表达式的值,a=3,b=4,c=5。
(1)a+b>c&&b==c 0
(2)a||b+c&&b-c 1
(3)!(a>b)&&!c||1 0
(4)!(c=a)&&(c=b)&&0 0
(5)!(a+b)+c-1&&b+c/2 1
5.2.1作业任务-----fun9()(方法一) -----fun9_2() (方法二)
有3个整数a、b、c,由键盘输入,输出其中最大的数。
void fun9()
{
int x=0,y=0,z=0,Num=0;
printf("输入3个数:");
scanf("%d,%d,%d",&x,&y,&z);
if(x<y)
{
Num=x;
x=y;
y=Num;
}
if(x<z)
{
Num=x;
x=z;
z=Num;
}
if (y<z)
{
Num=y;
y=z;
z=Num;
}
printf("从大到小输出:%d,%d,%d",x,y,z);
}
void fun9_2()
{
int x=0,y=0,z=0,Num=0;
printf("输入3个数:");
scanf("%d,%d,%d",&x,&y,&z);
x>y?x:Num=x,x=y,y=Num;
x>z?x:Num=x,x=z,z=Num;
y>z?z:Num=y,y=z,z=Num;
printf("从大到小输出:%d,%d,%d",x,y,z);
}
5.3.1作业任务----fun10()(方法一)-----fun10_2() (方法二)
给出一百分制成绩,要求从键盘输入成绩后,输出成绩等级‘A’、‘B’、‘C’、‘D’、'E'。
90分以上为‘A’,80—89分为‘B’,70—79分为‘C’,60—69分为‘D’,60分一下为'E'。
void fun10()
{
int grade=0; //grade 成绩
char rank='0'; // rank 等级
printf("请输入成绩:\n");
scanf("%d",&grade);
if(grade>90)
{
rank='A';
}else
if(grade>=80 && grade<90)
{
rank='B';
}else
if(grade>=70 && grade<80)
{
rank='C';
}else
if(grade>=60 && grade<70)
{
rank='D';
}else
{
rank='E';
}
printf("成绩等级为: %c",rank);
}
void fun10_2()
{
int grade=0; //grade 成绩
char rank='0'; // rank 等级
printf("请输入成绩:\n");
scanf("%d",&grade);
switch (grade/10) {
case 10:
case 9:
rank='A';
break;
case 8:
rank='B';
break;
case 7:
rank='C';
break;
case 6:
rank='D';
break;
default:
rank='E';
break;
}
printf("成绩等级为: %c",rank);
}
5.4.1作业任务-------fun11()
给你个不多于5位的正整数,要去:
(1)求出它是几位数;
(2)分别输出每一位数字;
(3)按逆序输出各位数字,例如原数为321,应输出123。
void fun11()
{
int Num=0;
printf("请输入一个五位数:\n");
scanf("%d",&Num);
if(Num/10000>=1)
{
printf("这个数是 五 位数\n");
printf("正序输出:\n");
printf("%d,%d,%d,%d,%d\n",Num/10000,(Num%1000)/1000,(Num%1000)/100,(Num%100)/10,Num%10);
printf("倒序序输出:\n");
printf("%d,%d,%d,%d,%d",Num%10,Num/10,Num/100,(Num%1000)/1000,Num/10000);
}else
if(Num/1000>=1)
{
printf("这个数是四 位数\n");
printf("正序输出:\n");
printf("%d,%d,%d,%d\n",Num/1000,(Num%1000)/100,(Num%100)/10,Num%10);
printf("倒序序输出\n");
printf("%d,%d,%d,%d",Num%10,(Num%100)/10,(Num%1000)/100,Num/1000);
}else
if(Num/100>=1)
{
printf("这个数是 三 位数\n");
printf("正序输出:\n");
printf("%d,%d,%d\n",(Num%1000)/100,(Num%100)/10,Num%10);
printf("倒序序输出:\n");
printf("%d,%d,%d",Num%10,(Num%100)/10,(Num%1000)/100);
}else
if(Num/10>=1)
{
printf("这个数是 二 位数\n");
printf("正序输出:\n");
printf("%d,%d\n",(Num%100)/10,Num%10);
printf("倒序输出:\n");
printf("%d,%d",Num%10,(Num%100)/10);
}else
{
printf("这个数是 一 位数\n");
printf("正序输出:\n");
printf("%d\n",Num%10);
printf("倒序输出:\n");
printf("%d",Num%10);
}
}
5.5作业五(20分钟)------fun12()
5.5.1作业任务
从键盘输入三个整数,判断是否能构成三角形,若能构成三角形判断是直角三角形,
等腰三角形还是等边三角形还是任意三角形。
(1)构成三角形条件(两边之和大于第三边)。
(2)直角三角形a*a=b*b+c*c,钝角三角形a*a>b*b+c*c,锐角三角形a*a<b*b+c*c
void fun12()
{
char str[20]="可以构成三角形,";
int a=0,b=0,c=0;
printf("请输入三角形的三条边:\n");
scanf("%d,%d,%d",&a,&b,&c);
if(a+b>c && b+c>a && c+a>b)
{
if(a*a==b*b+c*c || a*a+b*b==c*c || b*b==a*a+c*c)
{
strcat(str,"并且还是直角三角形");
}else
if(a==b && b==c && c==a)
{
strcat(str,"并且还是等腰三角形");
}else
if(a==b || a==c ||c==a)
{
strcat(str,"并且还是锐角三角形");
}
}else
{
strcpy(str,"不可以构成三角形");
}
puts(str);
}
写一个程序,从键盘上接收两个整数,输出这两个整数中值大的一个。
void fun1()
{
int x=0,y=0,max=0;
printf("请输入两个数:\n");
scanf("%d,%d",&x,&y);
max=x>y?x:y;
printf("%d和%d,值大的是:%d",x,y,max);
}
4.3.1 任务描述---fun3()
写一个程序,接收两个整数a和b,并判断a是否能被b整除,输出判断结果。
void fun3()
{
int x=0,y=0;
printf("请输入两个数:\n");
scanf("%d,%d",&x,&y);
if(x%y==0)
{
printf("%s","可以整除");
}
else
{
printf("%s","可以整除");
}
}
4.4.1 任务描述----fun4()
写一个程序,接收两个数字,判断这两个数字的乘积是否大于等于5000,
如果大于则告诉用户大于5000,如果相等则告诉用户等于5000,否则告诉用户小于5000。
void fun4()
{
int x=0,y=0;
printf("请输入两个数:\n");
scanf("%d,%d",&x,&y);
if(x*y>5000)
{
printf("乘积大于5000");
}else
if(x*y==5000)
{
printf("乘积等于5000");
}
else
{
printf("乘积小于5000");
}
}
4.5.1 任务描述----fun5()
银行的自动取款机大概有如下几种操作:存款、取款、查询余额、转账等几种功能。要求用switch语句进行模拟其操作。
由于在这里没有具体的按钮,可以使用数字来模拟用户的选择。
例如:可以提示用户"存款请按1"、"取款请按2"、"查询余额请按3"、"转账请按4"、"退出请按5"。来让用户进行选择。
而具体的操作,可以直接在屏幕上输出操作过程即可。例如:当用户选择1后,可以直接在屏幕上打印“正在进行存款操作.”
即可,其它操作类似。
void fun5()
{
int Num=0;
char str [50];
printf("请选择服务种类\n存款请按1 \n 取款请按2 \n 查询余额请按3 \n 转账请按4 \n 退出请按5\n");
scanf("%d",&Num);
switch (Num) {
case 1:
strcpy(str,"正在进行 存款 操作!");// strcpy() 方法的使用,需调用 <String.h>
break;
case 2:
strcpy(str,"正在进行 取款 操作!");
break;
case 3:
strcpy(str,"正在进行 查询余额 操作!");
break;
case 4:
strcpy(str,"正在进行 转账 操作!");
break;
case 5:
strcpy(str,"正在进行 退出 操作!");
break;
default:
strcpy(str,"请输入正确指令!");
break;
}
puts(str);
}
4.6.1 作业任务-----fun6()
从键盘上接收一个字符,判断它到底是哪种字符:数字,小写字母,大写字母,其他字符。
void fun6()
{
char c='0';
char str[20];
printf("请输入一个字符:\n");
c=getchar();
if(c>'0' && c<'9')
{
strcpy(str,"这个字符是数字\n");
}else
if(c>'a' && c<'z')
{
strcpy(str,"这个字符是字母\n");
}else
{
strcpy(str,"这个字符是其他字符\n");
}
puts(str);
}
4.7.1 作业任务---fun7()
写一个程序,能够判断从键盘上输入的年份是否是一个闰年。
void fun7()
{
int year=0;
printf("请输入年份,例如2004 2012 \n");
scanf("%d",&year);
if(year%400==0 || year%4==0&&year%400!=0)
{
printf("这个年份是闰年");
}else
{printf("这个年份视平年");
}
}
4.8.1 作业任务---fun8()
写一个程序,接收一个数字,判断它是否能同时被2和3整除
void fun8()
{
int Num =0;
printf("请输入一个数:\n");
scanf("%d",&Num);
if(Num%3==0 && Num%2==0)
{
printf("能 同时被2和3整除");
}else
{
printf("不能 同时被2和3整除");
}
}
5.1.1作业任务
写出下面各逻辑表达式的值,a=3,b=4,c=5。
(1)a+b>c&&b==c 0
(2)a||b+c&&b-c 1
(3)!(a>b)&&!c||1 0
(4)!(c=a)&&(c=b)&&0 0
(5)!(a+b)+c-1&&b+c/2 1
5.2.1作业任务-----fun9()(方法一) -----fun9_2() (方法二)
有3个整数a、b、c,由键盘输入,输出其中最大的数。
void fun9()
{
int x=0,y=0,z=0,Num=0;
printf("输入3个数:");
scanf("%d,%d,%d",&x,&y,&z);
if(x<y)
{
Num=x;
x=y;
y=Num;
}
if(x<z)
{
Num=x;
x=z;
z=Num;
}
if (y<z)
{
Num=y;
y=z;
z=Num;
}
printf("从大到小输出:%d,%d,%d",x,y,z);
}
void fun9_2()
{
int x=0,y=0,z=0,Num=0;
printf("输入3个数:");
scanf("%d,%d,%d",&x,&y,&z);
x>y?x:Num=x,x=y,y=Num;
x>z?x:Num=x,x=z,z=Num;
y>z?z:Num=y,y=z,z=Num;
printf("从大到小输出:%d,%d,%d",x,y,z);
}
5.3.1作业任务----fun10()(方法一)-----fun10_2() (方法二)
给出一百分制成绩,要求从键盘输入成绩后,输出成绩等级‘A’、‘B’、‘C’、‘D’、'E'。
90分以上为‘A’,80—89分为‘B’,70—79分为‘C’,60—69分为‘D’,60分一下为'E'。
void fun10()
{
int grade=0; //grade 成绩
char rank='0'; // rank 等级
printf("请输入成绩:\n");
scanf("%d",&grade);
if(grade>90)
{
rank='A';
}else
if(grade>=80 && grade<90)
{
rank='B';
}else
if(grade>=70 && grade<80)
{
rank='C';
}else
if(grade>=60 && grade<70)
{
rank='D';
}else
{
rank='E';
}
printf("成绩等级为: %c",rank);
}
void fun10_2()
{
int grade=0; //grade 成绩
char rank='0'; // rank 等级
printf("请输入成绩:\n");
scanf("%d",&grade);
switch (grade/10) {
case 10:
case 9:
rank='A';
break;
case 8:
rank='B';
break;
case 7:
rank='C';
break;
case 6:
rank='D';
break;
default:
rank='E';
break;
}
printf("成绩等级为: %c",rank);
}
5.4.1作业任务-------fun11()
给你个不多于5位的正整数,要去:
(1)求出它是几位数;
(2)分别输出每一位数字;
(3)按逆序输出各位数字,例如原数为321,应输出123。
void fun11()
{
int Num=0;
printf("请输入一个五位数:\n");
scanf("%d",&Num);
if(Num/10000>=1)
{
printf("这个数是 五 位数\n");
printf("正序输出:\n");
printf("%d,%d,%d,%d,%d\n",Num/10000,(Num%1000)/1000,(Num%1000)/100,(Num%100)/10,Num%10);
printf("倒序序输出:\n");
printf("%d,%d,%d,%d,%d",Num%10,Num/10,Num/100,(Num%1000)/1000,Num/10000);
}else
if(Num/1000>=1)
{
printf("这个数是四 位数\n");
printf("正序输出:\n");
printf("%d,%d,%d,%d\n",Num/1000,(Num%1000)/100,(Num%100)/10,Num%10);
printf("倒序序输出\n");
printf("%d,%d,%d,%d",Num%10,(Num%100)/10,(Num%1000)/100,Num/1000);
}else
if(Num/100>=1)
{
printf("这个数是 三 位数\n");
printf("正序输出:\n");
printf("%d,%d,%d\n",(Num%1000)/100,(Num%100)/10,Num%10);
printf("倒序序输出:\n");
printf("%d,%d,%d",Num%10,(Num%100)/10,(Num%1000)/100);
}else
if(Num/10>=1)
{
printf("这个数是 二 位数\n");
printf("正序输出:\n");
printf("%d,%d\n",(Num%100)/10,Num%10);
printf("倒序输出:\n");
printf("%d,%d",Num%10,(Num%100)/10);
}else
{
printf("这个数是 一 位数\n");
printf("正序输出:\n");
printf("%d\n",Num%10);
printf("倒序输出:\n");
printf("%d",Num%10);
}
}
5.5作业五(20分钟)------fun12()
5.5.1作业任务
从键盘输入三个整数,判断是否能构成三角形,若能构成三角形判断是直角三角形,
等腰三角形还是等边三角形还是任意三角形。
(1)构成三角形条件(两边之和大于第三边)。
(2)直角三角形a*a=b*b+c*c,钝角三角形a*a>b*b+c*c,锐角三角形a*a<b*b+c*c
void fun12()
{
char str[20]="可以构成三角形,";
int a=0,b=0,c=0;
printf("请输入三角形的三条边:\n");
scanf("%d,%d,%d",&a,&b,&c);
if(a+b>c && b+c>a && c+a>b)
{
if(a*a==b*b+c*c || a*a+b*b==c*c || b*b==a*a+c*c)
{
strcat(str,"并且还是直角三角形");
}else
if(a==b && b==c && c==a)
{
strcat(str,"并且还是等腰三角形");
}else
if(a==b || a==c ||c==a)
{
strcat(str,"并且还是锐角三角形");
}
}else
{
strcpy(str,"不可以构成三角形");
}
puts(str);
}
相关文章推荐
- ios入门攻略 04篇 C语言基础【分支结构之if语句】
- shell脚本基础应用(二)if单分支,双分支,多分支语句
- 【C语言基础】“输入三次密码”的操作。(for循环,if语句)
- C#语言基础— 分支语句
- 黑马程序员_C语言基础_分支结构(if……else,switch)
- Python语言基础--1(if‘、while条件语句)
- C语言基础:if语句
- jeapedu 2 分支语句if基础
- C语言基础之分支结构—if...else—elseif—switch...case
- C语言基础 if语句
- Java语言基础组成(运算符,关键字,语句if,whle,for)
- Python学习入门基础教程(learning Python)--3.1Python的if分支语句 .
- 奶爸业余单片机学习之:C语言基础——switch多分支选择语句
- 20161215C语言基础13_分支语句
- Python学习入门基础教程(learning Python)--3.2 if-else分支语句 .
- C语言基础 4 if分支 for循环
- C语言基础:分支语句和常见运算符 分类: iOS学习 c语言基础 2015-06-10 21:44 13人阅读 评论(0) 收藏
- C语言基础:C控制语句:分支和跳转
- 20161215C语言基础13_分支语句
- c语言基础-分支语句和循环语句