C++面向物件程式設計50道程式設計題(第19題)
阿新 • • 發佈:2018-12-09
C++面向物件程式設計50道程式設計題(第19題)
摘要:C++程式設計實習是為學生提供了一個既動手又動腦,獨立實踐的機會,將課本上的理論知識和實際有機的結合起來,鍛鍊學生的分析問題和解決問題的能力,提高學生運用所學知識解決實際問題的能力。
本專輯為程式設計入門者、高校計算機軟體專業學習或複習提供C++程式設計題庫。
讀者請先獨立思考哦,再與參考程式進行比對檢查。
一、問題描述
二、考察內容
基本面向物件概念,如何建立類、物件,對類私有資料成員和公有成員函式的理解,簡單的字串處理。
三、難度等級
難度等級:★★☆☆☆
四、參考程式
#include <iostream.h> #include <string.h> class STR{ char *s; int yn; public: STR(char *t) { s=new char[strlen(t)+1]; strcpy(s,t); } int alph(char c) { if(c>='a'&&c<='z') return 1; if(c>='A'&&c<='Z') return 1; return 0; } int num(char c) { if(c>='0'&&c<='9') return 1; return 0; } void fun(); void print() { cout<<s; if(yn) cout<<" 是一個合法的識別符號!\n"; else cout<<" 不是一個合法的識別符號\n"; } ~STR(){delete []s;} }; void STR::fun() { if(num(*s)){ yn=0; return; } for(char *p=s;*p;p++){ if(alph(*p)) continue; if(num(*p)) continue; if(*p=='_') continue; break; } if(*p) yn=0; else yn=1; } void main() { STR s1("4abc1"),s2("ab c"),s3("_134"),s4("$abc"); s1.fun(); s2.fun(); s3.fun(); s4.fun(); s1.print(); s2.print(); s3.print(); s4.print(); }
五、心得感受
可以在評論處寫下思考和程式設計此題的感受