字元判斷
問題:
描述
現在,有一行括號序列,請你檢查這行括號是否配對。
輸入
第一行輸入一個數N(0<N<=100),表示有N組測試資料。後面的N行輸入多組輸入資料,
每組輸入資料都是一個字串S(S的長度小於10000,且S不是空串),
測試資料組數少於5組。資料保證S中只含有"[","]","(",")"四種字元
輸出
每組輸入資料的輸出佔一行,如果該字串中所含的括號是配對的,則輸出Yes,如果不配對則輸出No
樣例輸入
3
[(])
(])
([[]()])
樣例輸出
No
No
Yes
Yes
程式碼:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
int n,i;
scanf("%d",&n);
int ds,df,flag;
while(n--)
{
char *str=(char*)malloc(10005);
scanf("%s",str);
ds=0;
df=0;
flag=0;
if(strlen(str)%2!=0){
printf("No\n");
free(str);
continue;
}else
{
for(i=0;i<=strlen(str);i++){
if(str[i]=='(')
ds++;
if(str[i]==')')
ds--;
if(str[i]=='[')
df++;
if(str[i]==']')
df--;
if((str[i]=='('&&str[i+1]==']')||(str[i]=='['&&str[i+1]==')'))
{
printf("No\n");
free(str);
flag=1;
break;
}
}
if(flag)
continue;
if(ds!=0||df!=0)
{
printf("No\n");
free(str);
continue;
}
else
{
printf("Yes\n");
free(str);
}
}
}
return 0;
}
總結:
字串判斷的時候使用字元指標,這樣可以變換為字元陣列進行單個字元的判斷
問題:
/*
描述
輸入三個字元(可以重複)後,按各字元的ASCII碼從小到大的順序輸出這三個字元。
輸入
第一行輸入一個數N,表示有N組測試資料。
後面的N行輸入多組資料,每組輸入資料都是佔一行,有三個字元組成,之間無空格。
輸出
對於每組輸入資料,輸出一行,字元中間用一個空格分開。
樣例輸入
3
qwe
asd
zxc
樣例輸出
e q w
a d s
c x z
*/
程式碼:
*/
#include<stdio.h>
#include<string.h>
using namespace std;
int main()
{
int i;
char a,b,c,t;
scanf("%d",&i);
getchar();//只適用於c,吃掉回車
while(i--)
{
scanf("%c%c%c",&a,&b,&c);
getchar();
/*輸入別的資料時,肯定是按回車結束的,而回車實際上輸入了兩個字元,
為了防止別的語句讀到這個'\n',需要用一個getchar()先把它讀走。*/
if(a>b)
{
t=a;a=b;b=t;
}
if(a>c)
{
t=a;a=c;c=t;
}
if(b>c)
{
t=b;b=c;c=t;
}
printf("%c %c %c\n",a,b,c);
}
return 0;
}
/*
#include "stdio.h"
main()
{
char a,b,c,d;
int i;
scanf("%d",&i);
getchar();
while(i--)
{
scanf("%c%c%c",&a,&b,&c);
getchar();
if (a>b) {d=a;a=b;b=d;}
if (a>c) {d=a;a=c;c=d;}
if (b>c) {d=b;b=c;c=d;}
printf("%c %c %c\n",a,b,c);
}
}
*/
總結:
注意getchar()的用法。
相關文章
- NSPredicate 不能判斷全形字元字元
- 判斷是什麼字元字元
- 組合語言---判斷字元組合語言字元
- 判斷是否為迴文字元字元
- js 判斷 字元的長度255JS字元
- mysql如何判斷不包含某個字元MySql字元
- js判斷字串中是否含有指定字元JS字串字元
- javascript判斷字串是以指定字元開頭JavaScript字串字元
- 判斷字元是否重複正規表示式字元
- PHP 判斷一個字元是否在字串中PHP字元字串
- js如何判斷字串中是否含有指定字元JS字串字元
- C#實現判斷字元是否為中文C#字元
- 如何在 MySQL 中判斷中文字元?MySql字元
- js判斷字串是否含有特殊字元和emoji表情JS字串字元
- 能夠判斷非法字元的正規表示式字元
- 判斷檔案中是否存在中文字元字元
- Oracle 中文字元及中文亂碼判斷Oracle字元
- 判斷字串中出現最多的字元,並統計次數字串字元
- python 判斷變數是數字型還是字元型Python變數字元
- EditText監聽方法,實時的判斷輸入多少字元字元
- 字串轉換為數字時判斷非法字元並校正字串字元
- JS判斷字串長度(英文佔1個字元,中文漢字佔2個字元)JS字串字元
- 註冊使用者名稱字元長度判斷細節字元
- 判斷字串中只包含或不包含某種字元的方法字串字元
- 怎麼判斷dns汙染,怎麼判斷dns汙染,具體判斷方法DNS
- JS的判斷語句:判斷、迴圈JS
- 判斷SQL語句中是否包含中文、英文字元和數字SQL字元
- js函式中的if判斷和a==b判斷JS函式
- 使用帶型別判斷的比較判斷型別
- js資料型別判斷和陣列判斷JS資料型別陣列
- 原型判斷方法原型
- nginx 多if判斷。Nginx
- 判斷 iOS 版本iOS
- sqlldr增加判斷。SQL
- 利用正規表示式判斷一個給定的字元是否是迴文字元
- thinkphp-條件判斷-範圍判斷-range標籤PHP
- C語言判斷素數,判斷質素演算法C語言演算法
- 第五章 字串專題 ---------------- 5.1 題解:判斷字串有無重複字元字串字元