易出錯 遺漏“switch” 與遺漏“負數”的判斷

Hundreds_N發表於2020-10-30

90分以上為’A’,80-89為’B’,70-79為’C’,60-69為’D’,60以下為’E’

#include<stdio.h>
int main(){
	int score;
	scanf("%d",&score);             //遺漏了scanf的內容,顯示為   D
	if (score > 100  || score < 0) //遺漏了score不可小於0
		printf("input error!");
	if(score > 90)
		printf("A");
		else if(80 < score)
			printf("B");
		else if(70 < score)
			printf("C");
		else if(60 < 70)
			printf("D");
		else 
			printf("E");
	return 0;
}

**
**
下面為switch語句的程式程式碼

#include<stdio.h>
int main(){
	int score;
	scanf("%d",&score);
	if( score<0 || score>100)
		printf("data error\n");
	else switch(score/10){
		case 9:printf("A"); break;
		case 8:printf("B"); break;
		case 7:printf("C"); break;
		case 6:printf("D"); break;
		default : printf("E");
	}
	return 0;
}

相關文章