
仍旧简单的一集。但 erase 的用法还挺特殊跟 substr 用法相似。如果用 begin() 或者 begin() 2那只删除这一个字符。如果只用一个数字那就会从数字开始删到尾。要想不删到尾就要用两个数字一个数字是起始位置一个数字是要删的长度。#includebits/stdc.h using namespace std; bool isprime(int num) { if(num 1) return false; for(int i 2; i sqrt(num); i ) { if(num % i 0) return false; } return true; } int main() { string s; cin s; int sum 0; if(isprime(stoi(s)) ) { sum ; cout s Yes endl; } else cout s No endl; for(int i 1; i 8; i ) { s.erase(s.begin()); if(isprime(stoi(s)) ) { sum ; cout s Yes endl; } else cout s No endl; } if(sum 8) cout All Prime! endl; return 0; }