编写一个程序,它从标准输入读取C源代码,并验证所有的花括号都正确的成对出现。

花括号匹配:{}、{{}}、{{}{}}


int main()
{
	int ch;            //定义一个变量来接收文件读取的信息
	int count = 0;           //定义一个计数器来验证括号匹配情况
	while ((ch = getchar()) != EOF)   //当文件没有结束时用ch接收输入的信息.注:EOF为文件结束标志 当在编译器输入框输完所输的内容时 需要按Ctrl+z来结束本次输入
	{
		if (ch == '{')
			count++;//当遇到{时,计数器+1
		if (ch == '}' && count == 0)
		{
			printf("不匹配\n");
		}//当遇到}但计数器为0了,输出不匹配,即为}在{前边
		if (ch == '}' && count != 0)
			count--;		//当遇到}且计数器不为0时,计数器-1

	}
	if (count == 0)
	{
		printf("匹配!\n");
	}
	else
	{
		printf("不匹配!\n");
	}//判断计数器count
	return 0;
}

输出时,若因 { 多 } 少造成的不匹配,输出“不匹配!”

             若因 } 多 { 少造成的不匹配,输出“不匹配”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值