- #include <stdio.h>
- int main(int argc, const char * argv[]) {
-
- // 要求用户输入一串圆括号或者大括号。然后给出判断他们是否正确的嵌套。
- //先定义4个字符用来表示"(){}"符号
- char bj1 = '(';
- char bj2 = ')';
- char bj3 = '{';
- char bj4 = '}';
-
- int flag = 1; //作为判断的标记
-
- //定义一个字符数组用来接收用户输入的字符串
- char ch[50];
- printf("请输入一连串圆括号或大括号:\n");
- scanf("%s",ch);
- printf("您输入的是: %s\n",ch);
- //计算输入的字符串长度
- int count = (int)strlen(ch);
-
- //嵌套的话,count值必须为偶数
- if (count % 2) {
- printf("您输入的这串圆括号或者大括号,不是正确的嵌套!\n");
- }else{
-
- for (int i=0; i<count/2; i++) {
- //这里取出每一个字符与已定义的"(){}"符号作比较
- if ((ch[i]==bj1 && ch[count-1-i]==bj2) || (ch[i]==bj3 && ch[count-1-i]==bj4)) {
- flag = 1;
- }else{
- flag = 0;
- printf("您输入的这串圆括号或者大括号,不是正确的嵌套!\n");
- break;
- }
- }
- if (flag) {
- printf("您输入的这串圆括号或者大括号,是正确的嵌套!\n");
- }
- }
-
-
-
- return 0;
- }
复制代码
大概就这样了,看看合不合适,先吃饭去了. |