z=(m=a>b)&&(n=cb)&&(n==c>d); z=(m=a>b)||(n=c>d); z=(m=ad); z=(m=a-10&&x<10||x>100&&x<200 错误:-10e !e&&(e==b)==(++c) !e&&e==(b==++c) a++&&e++&&e++ a++&&e++||e++ (a+c==b)==(b+d==a)||(c=b+a)>(d=c+d) (a+c==b)>(b+d==a)||(c=b+a)>(d=c+d) 3、if语句 1)、if语句的三种形式: if-else形式: if (表达式) 语句1; else 语句2; 例如: if(x>y) printf(“%d”,x); else printf(“%d”,y); if形式: if (表达式) 语句; 例如: if(x>y) printf(“%d”,x); else-if形式 if (表达式1) 语句1; else if (表达式2) 语句2; …… else 语句n; 例如:if(x>0) y=1; else if(x==0) y=0; else y=-1; 例: 从键盘输入两个整数,输出最大值。 main( ) { int a,b,max; printf(“please input a,b: ”); scanf(“%d%d”,&a,&b); if (a>b) max=a; else max=b; printf(“max=%d\\n”,max); } 例: 输入两个实数,由小到大输出。 main( ) { float a,b,t; scanf(\ if (a>b) {t=a; a=b; b=t;} printf(\} 例: 输入三个实数,按由小到大顺序输出。 main( ) { float a,b,c,t; scanf(\ 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(\} 例: 对求三角形面积的程序进行改进,要求判断输入的三边能否构成三角形。如果能构成三角形则计算面积,否则给出相应信息。 #include \main( ) { float a,b,c,s,area; scanf(\ if (a+b>c&&b+c>a&&a+c>b) {s=(a+b+c)/2; area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(\ } else printf(“input data error”); } 例:判断从键盘输入的一个字符是什么样的字符。 #include “stdio.h” main( ) { char c; printf(“please input a character: ”); c=getchar( ); if (c>=‘a’&&c<=‘z’) printf(“lower\\n”); else if(c>=‘A’&&c<=‘Z’) printf(“upper\\n”); else printf(“NO Letter\\n”); }例5 给一个成绩,要求输出成绩等级。90分及以上为‘A’,80-89分为’B’,70-79分为’C’,60-69分为’D’,60分以下为’E’。 main() { int s; scanf(“%d”,&s); if(s>=90) printf(“A\\n”); else if(s>=80) printf(“B\\n”); else if(s>=70) printf(“C\\n”); else if(s>=60) printf(“D\\n”); else printf(“E\\n”); } 例: main( ) { int a=1,b=2,c=3; if (a>b) a=b, b=c; c=a; printf(“%d,%d,%d\\n”,a,b,c); } 例: main( ) { int a=1,b=2,c=3; if (a>c); b=a; a=c; c=b; printf(“%d,%d,%d\\n”,a,b,c); } 例: main( ) { int a=1,b=2,c=3; if (a>c) b=a; a=c; c=b; printf(“%d,%d,%d\\n”,a,b,c); } 2)、嵌套的if语句 在一个if语句中又包含了另一个if语句,称为if语句的嵌套。 例: #include “stdio.h” 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’); } 条件运算符和条件表达式 条件运算符 ?: 条件表达式的形式为: 表达式1?表达式2:表达式3 先计算表达式1,若其值为非零,则结果为表达式2的值,否则就是表达式3的值。 结合性:从右到左 例如: 设a=2,b=3,c=4,则 (1)m=a>b?a:b的值为3 (2)m=a>b?a:b>c?b:c 先计算b>c?b:c,结果为4 再计算m=a>b?a:4,结果为4 则m的值为4,整个表达式的值也为4。 例: a=3;b=2; c=(--a==b++)?a--:++b; switch语句 switch语句的基本格式: switch (表达式) { case 常量表达式1:语句1;[break;] case 常量表达式2:语句2;[break;] … … case 常量表达式n:语句n;[break;] default :语句n+1; } 注意: 当表达式的值与某一个case后面的常量表达式的值相等时,就执行该case后面的语句,都不相等时,就执行default后语句。 每个case的常量表达式的值必须互不相同。 各个case的出现次序不影响执行结果。 用break语句可以跳出switch结构。 例7输入两个运算量和一个运算符,完成加、减、乘、除运算,输出运算结果。 #include\ main( ) { float x,y,z; char ch; printf(“\\n Enter a calculation (x?y): ”); scanf(“%f%c%f”,&x,&ch,&y); switch(ch) { case '+':z=x+y;printf(\ case '-':z=x-y;printf(\ case '*':z=x*y;printf(\ case '/': if (y= =0) printf(\ else {z=x/y; printf(\ default:printf(\ } } 用if语句 if (s<250) d=0; else if(s<500) d=0.02; else if (s<1000) d=0.05;
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库C语言程序设计教案内容(5)在线全文阅读。