练习题012:编写一个程序,它从标准输入读取C源代码,并验证所有的花括号都正确的成对出现_用嵌入式编写一个打开文件系统并且读他_Tianzez的博客-程序员秘密

技术标签: 标准  从输入读取C源代码  c语言  源代码  C练习题  验证所有花括号匹配  

C语言练习题目录索引

题目:编写一个程序,它从标准输入读取C源代码,并验证所有的花括号都正确的成对出现。例如,输入“{()wqwq6}{ { {}}}”判断里面的花括号匹配,返回1;输入“{ { {}}}{”判断里面的花括号不匹配,返回0。

解题思路:设置一个计数器count,当读取到’{‘时count++,当读取到’}’时,count–。用一个while循环遍历整个字符串,最后count为0时,则花括号匹配。

int main()
{
    char str;
    int i = 0;
    int j = 0;

    printf("请输入字符串:");

    while ((str = getchar()) != EOF) //循环开始,EOF结束
    {
        if (str == '{')  //输入一个‘{’时,i++
        {
            i++;
        }
        else
        {
            if (str == '}')//输入一个‘}’时,j++
                j++;
        }
    }

        if ((i == j) && (i != 0) && (j != 0))//如果‘{’和‘}’数量相等并且两者均不为零时,确认匹配
        {
            printf("匹配\n");
        }
        else
        {
            printf("不匹配\n");
        }

    system("pause");
    return 0;
}

运算结果

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Tianzez/article/details/78130392

智能推荐

[Operator Overloading]The Complex class_「已注销」的博客-程序员秘密

The Complex classDescriptionImplement the Complex class:class Complex{ double re; //real part of a complex number double im; //imaginary part of a complex numberpublic: double real() const ...

SpringBoot个人博客开发(八)----异常处理_个人博客异常处理_王绵州的博客-程序员秘密

上一节我们将项目搭建上了。这一节我们进行异常处理在模板资源目录中创建error目录目录中创建这三个html,文件名开头必须为这些,后面可以稍作更改。(可能可以不为404等开头,我说的可能比较片面,技术在进步嘛。人人皆学习!)内容分别为在你以自己喜好创建的包名处右击创建子包controller在子包下创建类indexController,返回首页的一个控制器前面要加上一个Controller,代表他是一个控制器package net.yq.springbootblog.control

jaxb的注解解释_weixin_30390075的博客-程序员秘密

一、注解的使用:@[email protected](XmlAccessType.FIELD)经常这样用@[email protected]属性为name,[email protected]指示JAXB在绑定这个类时也绑定其他类。@XmlSchema(package-info.java)@javax.xml....

C语言_putw,_getw的使用_Seven Conor的博客-程序员秘密

这两个函数的原型为:int _getw(FILE* bstream) int _putw(int w,FILE* bstream)使用这两个函数经过了3个阶段第1个阶段以为以为w代表的是Unicode字符结果一直产生乱码第2个阶段了解到w是word(字)的意思,现如今这2个函数都跟int有关结果还是不能成功最后才了解到这还跟二进制流有关,下面代码成功#include <stdarg.h>#include <stdio.h>#include <Windows

RHEL6.5 db2_data_server_client客户端 安装与配置_db2dataserverclient_Long_Freedom的博客-程序员秘密

一.安装:-------------------------------------------------------1.安装包下载:ibm_data_server_client_linuxx64_v11.1.tar.gz IBM Data Server Client: 这个客户机是最完整的安装,里面包含了该有的api接口,在sqllib/include文件夹下,有各种.h头文件

随便推点

python 写csv scrapy_Scrapy 爬虫(3):爬取数据不保存,就是耍流氓_weixin_39641738的博客-程序员秘密

(给Python开发者加星标,提升Python技能)作者:Zone(本文来自作者投稿)前言通过前面两篇文章《爬虫利器 Scrapy 初体验(1)》《Scrapy 爬虫(2):听说你的爬虫又被封了?》,我们初体验也过了,爬虫代码健壮性也升级为 PLUS 了。都分析到这个地步了,是不是感觉还少了点什么?对,我们还没保存数据呀?不保存,这不是瞎忙活吗?Itemsitem 是我们保存数据的容器...

nalu模式多slice_H.264中NAL、Slice与frame意思及相互关系_weixin_39525118的博客-程序员秘密

H.264中NAL、Slice与frame意思及相互关系NAL nal_unit_type中的1(非IDR图像的编码条带)、2(编码条带数据分割块A)、3(编码条带数据分割块B)、4(编码条带数据分割块C)、5(IDR图像的编码条带)种类型与Slice种的三种编码模式:I_slice、P_slice、B_slice还有frame的3种类型:I frame、P frame、 B frame之间有什么...

虚拟机异常检查工具_Zn昕的博客-程序员秘密

虚拟机异常检查工具命令行工具jps(JVM Process Status)虚拟机进程状态工具功能查询LVMID(虚拟机进程ID)命令格式jps options hostid(例如: jps -l)工具选项 选项 功能 -q 只输出LVMID -m 输出虚拟机进程启动时传递给主类main()函数的参数 ...

不用再争论了!这才是最适合Python初学者的IDE_python新手用不用ide_七步编程的博客-程序员秘密

Python频繁霸屏,让越来越多的同学开始尝试自学Python。学习一门编程语言,首先要准备的就是开发环境,解释器/编译器、IDE/编辑器等。​对于Python也是这样,虽然它相对简单,但是,对于外行来说,选择一款开发工具就成了黑盒一样,不知所措。如果问一位Python开发者,应该选择哪款开发工具?99%的会在PyCharm、VS Code、Sublime、Eclipse、Jupyter这些知名的工具中进行选择。诚然,这些名气很大的开发工具的确很好用。但是,如果把目标手中限定在初学者

【OpenCV错误】error: (-215:Assertion failed) src.type() == CV_8UC1 in function 'threshold'_Donald Su的博客-程序员秘密

1. 问题描述使用threshold进行阈值处理,遇到下面的错误:opencv-4.0.1/modules/imgproc/src/thresh.cpp:1389: error: (-215:Assertion failed) src.type() == CV_8UC1 in function ‘threshold’自己的调用代码为:threshold(src, dest, threshol...

推荐文章

热门文章

相关标签