輸入一串字元,只包含“0-10”和“,”,找出其中最小的數字和最大的數字(可能不止一個),輸出最後剩餘數字個數
阿新 • • 發佈:2019-02-10
輸入一串字元,只包含“0-10”和“,”找出其中最小的數字和最大的數字(可能不止一個),輸出最後剩餘數字個數。
如:輸入 “3,3,4,5,6,7,7”
輸出 3
支援0-10
#include "stdafx.h" int _tmain(int argc, _TCHAR* argv[]) { char str[20]=" "; std::cin>>str; int a[10]={0}; int i=0,j=0,max=0,min=20; while(str[i]){ if(str[i+1]==','||str[i+1]=='\0'){ a[j]=str[i]-'0'; if(max<a[j]) max=a[j]; if(min>a[j]) min=a[j]; j++; i+=2;} else if(str[i+1]=='0') { a[j]=10; if(max<a[j]) max=a[j]; if(min>a[j]) min=a[j]; j++; i+=3; } } int length=j; for(int n=0;n<length;n++) { if(a[n]==max||a[n]==min) j--; } printf("%d,%d,%d",j,max,min);//j表示去掉最大數最小數後最後剩餘數字個數,max,min分別是最大數最小數 return 0; }