Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
c语言中if 语句的用法_if多条件判断,希望能够帮助你!!!。
一、if(…) {…}
1.一般形式:
if (表达式) {语句;}
表达式:
a,用非 0 值表示真,用 0 表示假;
b,if(flag) 相当于 if(flag!=0);
c,浮点数无法与 0 比较,只能用近似的值比较;例: 1e-6 等于1x10的-6次方可以看成0来使用;
2.用于单分支选择结构;
3.如含有交叉关系,使用并列的if语句;
例1:输出两个整数中的最大值
#include <stdio.h> void main() {
int a,b; printf("请输入两个整数:"); scanf("%d %d",&a,&b); if(a>b) {
printf("max = %d\n",a); } if(a<b) {
printf("max = %d\n",b); } }
二、if(…) {…} else {…}
if(表达式) {语句1; } else { 语句2;}
例2:输出两个整数中的最大值
例2关于对于非法字符的检查与处理
#include <stdio.h> void main() {
int a,b,max,data; printf("Input a,b:"); data = scanf(" %d,%d",&a,&b);/*记录scanf()的返回值;*/ if(data!=2)/*根据scanf()的返回值判断输入数据个数或者格式是否错误*/ {
printf("格式输入错误!"); fflush(stdin);/*清除输入缓冲区中的错误内容(fflush()可能带来可移植性的问题)*/ } else {
max = a>b?a:b;/*三目运算符(a>b值为真则输出a的值,反之输出b的值)*/ printf("%d\n",max); } }
三、if(…) {…} else if(…) {…} … else if(…) {…} else {…}
一般形式:
if(表达式1) { 语句1;}
else if(表达式2) {语句2;}
…
else if(表达式n){语句n;}
else{语句n+1;}
用于多分支的控制的条件语句;
例3:判断字符
#include <stdio.h> void main() {
char ch; printf("请输入一个字符:"); ch = getchar();/*getchar、putchar专门用于字符输入输出; getchar()写法上要写为 变量 = getchar(); putchar()用法为putchar(变量); putchar('\n')输出一个控制符; putchar('字母/字符');输出字母/字符; */ if(ch<=31) {
printf("这是一个控制字符或通讯专用字符!\n"); } else if(ch >= '0' && ch <= '9') {
printf("这是一个数字!\n"); } else if(ch >= 'A' && ch <= 'Z') {
printf("这是一个大写字母!\n"); } else if(ch >= 'a' && ch <= 'z') {
printf("这是一个小写字母!\n"); } else {
printf("这是其他字符!\n"); } }
四、switch() {case …: …; case …: …; … default: …;}
switch语句相当于多个if-else语句;
(表达式)只能是char型或者int型;
case 后面至少要有一个空格,常量后面是冒号
(表达式)与 常量类型要保持一致;
记得记得记得 在需要跳出的时候,在语句后面加上break;
例4:简单的加减乘除计算
#include <stdio.h> void main() {
double a,b; char ch; printf("Input a(+ - * /)b:"); scanf("%f%c%f",&a,&ch,&b); switch(ch) {
case '+': printf("%f%c%f=%.2f\n",a,ch,b,a+b);/*%.2f表示精度,可以理解为保留两位小数*/ break; case '-': printf("%f%c%f=%.2f\n",a,ch,b,a-b); break; case '*': case 'X': case 'x': printf("%f%c%f=%.2f\n",a,ch,b,a*b);/*输入"x" "X" "*" 都执行这一条语句;不加break,会顺语句执行*/ break; case '/': printf("%f%c%f=%.2f\n",a,ch,b,a/b); break; default: printf("请输入正确算式!\n"); } }
扩展
5.1:C语言中输出格式%m.nf的意思
假设, i=10.1; printf("%5.2f",i);
输出结果为 10.10(m=5,其中空格占1位,小数(n)占2位)
本文出现任何错误,欢迎留言批评指正。
今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
上一篇
已是最后文章
下一篇
已是最新文章