【STL】【HDU2024】C語言合法標識符【水題】
阿新 • • 發佈:2018-04-25
AI info targe == () 簡潔 技術分享 type #define
鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=2024
既然要求了全體同學都要刷完杭電100題,那我還是以身作則,也都給刷完吧~~~
這些水題真的是都快刷吐了 不知道刷過多少道了 就當做查缺補漏吧
不過還真的發現了一個有意思的題目,用普通的辦法判斷真的是太麻煩了,真是一個體力活
還沒註意過這幾個庫函數 用起來才發現這麽簡潔
getline();
getline()函數使用詳解
頭文件 C++<cctype> (C語言使用<ctype.h>)
isalpha
int isalpha( int ch )
功能:判斷字符ch是否為英文字母
說明:若ch為英文字母,返回非0(小寫字母為2,大寫字母為1)。若不是字母,返回0。
isalnum
int isalnum(int c);
功能:判斷字符變量c是否為字母或數字 說明:當c為數字0-9或字母a-z及A-Z時,返回非零值,否則返回零。
代碼:
1 // 實在懶得改了 下次再說吧 2 #define _CRT_SBCURE_NO_DEPRECATE 3 #include <set> 4 #include <map> 5 #include <cmath> 6 #include <queue> 7 #include <stack> 8#include <vector> 9 #include <string> 10 #include <cstdio> 11 #include <cstdlib> 12 #include <cstring> 13 #include <iostream> 14 #include <algorithm> 15 #include <functional> 16 #include <cctype> 17 18 using namespace std; 19 20 #define ll long long 21#define max3(a,b,c) fmax(a,fmax(b,c)) 22 #define ios ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0); 23 24 const int maxn = 110; 25 const int INF = 0x3f3f3f3f; 26 27 bool cmp(const int &a,const int &b) 28 { 29 return a>b; 30 } 31 32 33 int main() 34 { 35 int n; 36 scanf("%d",&n); 37 getchar(); 38 while(n--) 39 { 40 string s; 41 getline(cin,s); 42 // cout << s << endl; 43 int flag = 1; 44 if(isalpha(s[0]) || s[0] == ‘_‘) 45 { 46 for(int i = 0;i < s.size();i++) 47 { 48 if(isalnum(s[i]) == 0 && s[i] != ‘_‘) 49 { 50 flag = 0; 51 // cout << "22" << endl; 52 // continue; 53 break; 54 } 55 } 56 } 57 else 58 { 59 flag = 0; 60 } 61 if(flag) 62 printf("yes\n"); 63 else 64 printf("no\n"); 65 66 } 67 68 return 0; 69 }
【STL】【HDU2024】C語言合法標識符【水題】