1、掌握C语言逻辑值的表示方法(0代表“假” ,1代表“真”)。
2、学会正确使用关系表达式和逻辑表达式。
3、掌握各种形式的if语句语法和使用方法。注意if语句中if和else的匹配关系,以及if语句的嵌套。
4、掌握switch语句的语法和使用方法。注意在switch语句中break语句的用法及switch语句的嵌套。
5、能独立编写分支结构程序并调试通过。
6、用if语句、switch语句解决简单的应用问题并上机实现。
#include<stdio.h>
int main()
{
int l,w,h;
printf("请输入箱子的长,宽,高:\n");
scanf("%d%d%d",&l,&w,&h);
if(l==w&&w==h)
printf("该箱子是正方体。\n");
else
printf("该箱子是长方体。\n");
return 0;
}
#include<stdio.h>
main()
{
int a,b,c,d,e;
float x;
printf("请输入打印纸、墨盒、光盘的数量:");
scanf("%d,%d,%d",&a,&b,&c);
d=a*18+b*132+c*4.5;
e=d/100;
switch(e)
{
case 0:x=d;break;
case 1:x=d*(1-0.05);break;
case 2:x=d*(1-0.06);break;
case 3:x=d*(1-0.07);break;
case 4:x=d*(1-0.08);break;
default:x=d*(1-0.1);break;
}
printf("应付款数=%.2f",x);
}
int main()
{
int year,month,days;
printf("input year and month:\n");
scanf("%d%d",&year,&month);
switch(month)
{
case 2:if("year%100!=0&&year%4==0||year%400==0")
days=29;
else
days=28;break;
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:days=31;break;
case 4:
case 6:
case 9:
case 11:days=30;break;
}
printf("%d",days);
return 0;
}
#include<stdio.h>
int main()
{
int x,n,y;
float sum=0.0;
printf("请选择:1、日用品 2、文具 3、食品\n");
scanf("%d",&x);
switch(x)
{
case 1:printf("请选择:1、牙刷(3.5元/只)2、牙膏(6.2元/只)\n");
printf(" 3、肥皂(2元/块)4、毛巾(8.6元/条)\n");
scanf("%d",&y);
printf("数量?");
scanf("%d",&n) ;
switch(y)
{
case 1:sum=3.5*n;break;
case 2:sum=6.2*n;break;
case 3:sum=2*n;break;
case 4:sum=8.6*n;break;
}
break;
case 2:printf("请选择:1、笔(3元/只)2、笔记本(1.2元/个)\n");
printf(" 3、文件夹(12/个)4、文具盒(8.6元/个)\n");
scanf("%d",&y);
printf("数量?");
scanf("%d",&n) ;
switch(y)
{
case 1:sum=3*n;break;
case 2:sum=1.2*n;break;
case 3:sum=12*n;break;
case 4:sum=8.6*n;break;
}
break;
case 3:printf("请选择:1、白糖(3。6元/包)2、盐(1元/包)\n");
printf(" 3、饼(2/个)4、方便面(3.6元/条)\n");
scanf("%d",&y);
printf("数量?");
scanf("%d",&n) ;
switch(y)
{
case 1:sum=3.6*n;break;
case 2:sum=1*n;break;
case 3:sum=2*n;break;
case 4:sum=3.6*n;break;
}
break;
}
printf("总计:%.2f元\n",sum);
return;
}
#include<stdio.h>
int main()
{
int num=20;
if(5<num<10)
printf("%d in range (5,10)!\n",num);
else
printf("%d out of range (5,10)!\n",num);
}
#include<stdio.h>
int main()
{
int num=20;
if(num<5&&num<10)
printf("%d in range (5,10)!\n",num);
else
printf("%d out of range (5,10)!\n",num);
}
问题:
1、开始时输入两个数无法运行
2、没有考虑到除数是0的情况
解决
1、加入一个getchar()函数
2、运用if语句对除数进行一个判断
#include<stdio.h>
int main()
{
double x ; //输入1
double y ; //输入2
char ch; //操作
double ret; //结果
printf( "输入第一个数:" );
scanf( "%lf", &x );
printf( "输入第二个数:" );
scanf( "%lf", &y );
printf( "操作[+ - * /]:" );
getchar();
scanf( "%c", &ch );
switch( ch )
{
case ‘+‘:
ret = x + y; break;
case ‘-‘:
ret = x - y;break;
case ‘*‘:
ret = x * y;break;
case ‘/‘:
if(y==0)
printf("输入错误,除数不能为零!\n");
else
ret = x / y;break;
default:break;
}
printf( "结果:%.2lf\n", ret );
return 0;
}
对一些知识掌握不熟练,还有就是编写程序的速度有点慢,编程的思路窄,尤其是在做计算器程序的时候我认识到了知识的重要性,要有宽的知识面。因为自己的知识面窄,每每自己在做一个新的东西时,就发现自己的狼狈样。然而这个还是其次,最重要的是知识面宽了,解决问题思路的也就不那么狭隘了。
原文:https://www.cnblogs.com/zhangsiyong/p/12591040.html