一、if语句
例1:输入三个实数 a、b、c,按数值由小到大的顺序输出这三个数。
(该题不推荐使用if…else…来编写,因为如果要比较的数很多的话,就需要用很多if…else…来嵌套)
#include<stdio.h>
int main()
{
double a,b,c,t;
printf("请输入三个实数:\n");
scanf("%lf,%lf,%lf",&a,&b,&c);
if(a>b)
{
t=a;
a=b;
b=t;
}
if(a>c)
{
t=a;
a=c;
c=t;
}
if(b>c)
{
t=b;
b=c;
c=t;
}
printf("%f,%f,%f\n",a,b,c);
return 0;
}
二、常见的表达式形式(&&、||)
例1:请编一程序,判断某一年是否是闰年。(注:当年份不是 100 的倍数且是 4 的倍数时,该年是闰年;当年份是 100 的倍数且是 400的倍数时,该年也是闰年)
#include<stdio.h>
int main()
{
int year;
printf("请输入年份:\n");
scanf("%d",&year);
if((year%100!=0&&year%4==0)||(year%400==0))
{
printf("%d是闰年!\n",year);
}
else
{
printf("%d不是闰年!\n",year);
}
return 0;
}
例2:输入一个字符,判断它是否为大写字母,若是则将其转换成
//小写字母,若不是则不转换,然后输出最后得到的字符。
#include<stdio.h>
int main()
{
char c;
printf("请输入一个字符:\n");
scanf("%c",&c);
c=(c>='A'&&c<='Z')?c+32:c;
printf("%c\n",c);
return 0;
}
三、表达式 1?表达式 2:表达式 3
例1:输入两个实数 a、b,按数值由小到大的顺序输出这两个数。
#include<stdio.h>
int main()
{
double a,b;
printf("请输入两个实数:\n");
scanf("%lf,%lf",&a,&b);
a>b?printf("%f,%f",b,a):printf("%f,%f",a,b);
return 0;
}
四、 switch 语句
例1:某课成绩原为百分制,现要将其转成等级,规则是:90 分以上
为 A、80~89 分为 B、70~79 分为 C、60~69 分为 D、60 分以下
为 E。请编一程序,分数由键盘输入,输出等级。
#include<stdio.h>
int main()
{
double score;
printf("请输入分数:");
scanf("%lf",&score);
switch((int)(score/10))
{
case 10:
case 9:printf("该生等级为 A\n");
break;
case 8:printf("该生等级为 B\n");
break;
case 7:printf("该生等级为 C\n");
break;
case 6:printf("该生等级为 D\n");
break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:printf("该生等级为 E\n");
break;
default:printf("你特么输的是成绩吗?\n");
break;
}
return 0;
}