第五部分 选择结构程序设计

download 第五部分  选择结构程序设计

If you can't read please download the document

description

第五部分 选择结构程序设计. 0x1C. 0x18. 0x14. 0x10. 0x0C. 0x08. 0x04. 0x00. 提纲. 第五章 选择结构程序设计. if 语句. 1. Switch 语句. 2. 3. 程序举例. FIQ. IRQ. (Reserved). Data Abort. Prefetch Abort. Software Interrupt. Undefined Instruction. Reset. ARM Vector Table. 5.1 C 控制 语句. if( )~else~ switch - PowerPoint PPT Presentation

Transcript of 第五部分 选择结构程序设计

  • ARM Vector TableFIQIRQ(Reserved)Data AbortPrefetch AbortSoftware InterruptUndefined InstructionReset132Switch if

  • (95.1 C

  • 5.2

  • 5.2

  • 5.2

  • 5.2

  • A,B,A1.An5.2

  • ififif (expression) statementif (x>y) printf(%d,x);5.3 if

  • if (x>y) printf(%d,x);if (expression) statement1 else statement2if (x>y) max=x; else max=y;/**/ if (x>y) {max = x; } else {max = y; }5.3 if

  • if ( expr1 ) statement1else if (expr2 ) statement2else if (expr3 ) statement3...[ else statementn ] 5.3 if

  • if (salary>1000) {index=0.4;} else if (salary>800) index=0.3; else if (salary>600) index=0.2; else if (salary>400) index=0.1; else index=0; 5.3 if

  • if(a==b&&x==y) printf(a=b,x=y); if(3) printf(OK); if(a) printf(%d,a);if if(x) if(x!=0) if(!x) if(x==0)

    : #include main() { int x,y; scanf(%d,%d,&x,&y); if(x>y) x=y; y=x; else x++; y++; printf(%d,%d\n,x,y); }{},Compile Error!5.3 if

  • /*ch5_1.c*/#include main(){ int x,y; printf("Enter an integer:"); scanf("%d",&x); y=x; if(yabsolute value :125.3

  • /*ch5_2.c*/#include main(){ int a,b; printf("Enter integer a:"); scanf("%d",&a); printf("Enter integer b:"); scanf("%d",&b); if(a==b) printf("a==b\n"); else printf("a!=b\n");} Enter integer a:12 Enter integer b:12 a==b Enter integer a:12 Enter integer b:9 a!=b 5.3

  • /*ch5_3.c*/#include main(){ char c; printf("Enter a character:"); c=getchar(); if(c='0'&&c='A'&&c='a'&&c
  • /*ch5_3.c*/#include main(){ char c; printf("Enter a character:"); c=getchar(); if(c='0'&&c='A'&&c='a'&&c
  • if5.3

  • /*ch5_4.c*/#include main(){ int x,y; printf("Enter integer x,y:"); scanf("%d,%d",&x,&y); if(x!=y) if(x>y) printf("X>Y\n"); else printf("X
  • if ~ else { }elseif5.3 if

  • if (a==b) if(b==c) printf(a==b==c); else printf(a!=b); if (a==b) { if(b==c) printf(a==b==c); } else printf(a!=b);if ~ else { }5.3

  • : main() { int x=100,a=10,b=20; int v1=5,v2=0; if(a
  • switch( ){ case E1: 1; break; case E2: 2; break; . case En: n; break; [default: ;;]} switch5.3

  • 5.3 switch

  • E1,E2,En,breakcase{ }switchcase case A: case B: case C: printf(score>60\n); break; ..5.3 switch

  • switch(score) { case 5: printf(Very good!); case 4: printf(Good!); case 3: printf(Pass!); case 2: printf(Fail!); default : printf(data error!); }score5 Very good! Good! Pass! Fail! data error!

    5.3 switch

  • void main() { int x=1,y=0,a=0,b=0; switch(x) { case 1: switch(y) { case 0: a++; break; case 1: b++; break; } /*break;*/ case 2: a++;b++; break; case 3: a++;b++; } printf(\na=%d,b=%d,a,b); }a=2,b=15.3 switch

  • /*ch5_5.c*/#include main(){ int c; printf("Enter m or n or h or other:"); c=getchar(); switch(c) { case 'm': printf("\nGood morning!\n");break; case 'n': printf("\nGood night!\n"); break; case 'h': printf("\nHello!\n"); break; default : printf("\n????????\n"); break; }} switch

  • main( ){int a,b,c; scanf(%d%d%d,&a,&b,&c); if(a>b) if(b>c) printf(%d,%d,%d,a,b,c); else if(a>c) printf(%d,%d,%d,a,c,b); else printf(%d,%d,%d,c,a,b); else if(a>c) printf(%d,%d,%d,b,a,c); else if(b>c) printf(%d,%d,%d,b,c,a); else printf(%d,%d,%d,c,b,a); }3,55

  • main(){ int y,m,d,date,flag=1; printf(input year,month,day:); scanf(%d,%d,%d,&y,&m,&d); 1.(),55

  • switch(m) { case 1:date=0;break; case 2:date=31;break; case 3:date=31+28;break; case 4:date=31+28+31;break; case 5:date= 31+28+31+3 0;break; case 6:date= 31+28+31+30+31;break; case 7:date= 31+28+31+30+31 +30;break; case 8:date= 31+28+31+30+31 +30+31;break; case 9:date= 31+28+31+30+31 +30+31 +31;break; case 10:date= 31+28+31+30+31 +30+31 +31 +30;break; case 11:date= 31+28+31+30+31 +30+31 +31 +30 +31;break; case 12:date= 31+28+31+30+31 +30+31 +31 +30 +31 +30;break; default: printf(input error of month!);flag=0; }

  • if((m>2)&&((y%4==0)&&(y%100!=0)||(y%400==0))) date++; /*2*/date+=d; /**/if(flag==1) printf(year=%d,month=%d,date=%d--no=%d\n, y, m, d, date);}

  • main(){ int x,x1,m; scanf(%d,&x1); if(x1
  • #includemain(){ float a,b,c,s,area; scanf(%f%f%f,&a,&b,&c); if(a+b>c&&b+c>a&&c+a>b) //3.,

  • if(a+b>c&&b+c>a&&c+a>b) { s=0.5*(a+b+c); area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(area=%6.2f,area); if(a==b&&b==c) { printf();} elseif(a==b||b==c||a==c) {printf();} elseif((a*a+b*b==c*c)||(a*a+c*c==b*b) ||(b*b+c*c==a*a)) {printf();} else {printf();} } else {printf() ;}}

  • main(){ float value1,value2,value3; char op; printf(\nType in your expression:); scanf(%f%c%f,&value1,&op,&value2); // 4.number1 operator number2,operator+,-*,/,numberfloat

  • switch(op){ case+:value3=value1+value2; break; case-:value3=value1-value2; break; case*:value3=value1+value2; break; case/:if(value2==0) {printf(\nDivision by zero!); exit(1); } value3=value1/value2; break; default:printf(Unknown operator !); exit(0);}printf(Tsis is%6.2f%c%6.2f\n, value1,op,value2,value3 );}

  • 55( P1001045.55.7:5.35.10

    ,ARM