case必須是常量表達式,列舉全部可能,用在這裡不方便,例如:case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":digital++;break;#include<stdio.h>voidmain(){intletter=0,digital=0,space=0,other=0,i;charc;printf("請輸入一些字元:");/*這裡刪除scanf("%c",&c);*/while((c=getchar())!="\n"){if(c>="0"&&c<="9")i=0;//數字elseif((c>="a"&&c<="z")||(c>="A"&&c<="Z"))i=1;//字母elseif(c=="")i=2;//空格,這裡用==elseif(32<c<48||57<c<65||90<c<97||122<c<127)i=3;//其他字元switch(i){case0:digital++;break;case1:letter++;break;case2:space++;break;case3:other++;break;}}printf("數字有%d個,字母有%d個,空格有%d個,其他字元有%d個。\n",digital,letter,space,other);}
case必須是常量表達式,列舉全部可能,用在這裡不方便,例如:case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":digital++;break;#include<stdio.h>voidmain(){intletter=0,digital=0,space=0,other=0,i;charc;printf("請輸入一些字元:");/*這裡刪除scanf("%c",&c);*/while((c=getchar())!="\n"){if(c>="0"&&c<="9")i=0;//數字elseif((c>="a"&&c<="z")||(c>="A"&&c<="Z"))i=1;//字母elseif(c=="")i=2;//空格,這裡用==elseif(32<c<48||57<c<65||90<c<97||122<c<127)i=3;//其他字元switch(i){case0:digital++;break;case1:letter++;break;case2:space++;break;case3:other++;break;}}printf("數字有%d個,字母有%d個,空格有%d個,其他字元有%d個。\n",digital,letter,space,other);}