You need to enable JavaScript to run this app.
最新活动
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

K&R练习1-24

以下是K&R练习1-24的解决方法,其中包含了代码示例:

#include <stdio.h>

#define MAX_LENGTH 1000

int checkBalance(char code[MAX_LENGTH]);
void checkQuotes(char code[MAX_LENGTH], int* inSingleQuotes, int* inDoubleQuotes);

int main() {
    char code[MAX_LENGTH];
    int i, c, inComment = 0, inSingleQuotes = 0, inDoubleQuotes = 0;

    i = 0;
    while ((c = getchar()) != EOF) {
        code[i] = c;
        i++;
    }
    code[i] = '\0';

    if (checkBalance(code) == 0) {
        printf("Parentheses, brackets, and braces are balanced.\n");
    } else {
        printf("Parentheses, brackets, or braces are not balanced.\n");
    }

    return 0;
}

int checkBalance(char code[MAX_LENGTH]) {
    int i, c, prevC, inComment = 0, inSingleQuotes = 0, inDoubleQuotes = 0;
    int parenthesesBalance = 0, bracketsBalance = 0, bracesBalance = 0;

    for (i = 0; code[i] != '\0'; i++) {
        c = code[i];

        if (c == '/' && prevC == '/') {
            inComment = 1;
        } else if (c == '\n') {
            inComment = 0;
        } else if (!inComment) {
            if (c == '\'' && !inDoubleQuotes) {
                checkQuotes(code, &inSingleQuotes, &inDoubleQuotes);
            } else if (c == '"' && !inSingleQuotes) {
                checkQuotes(code, &inSingleQuotes, &inDoubleQuotes);
            } else {
                if (c == '(') {
                    parenthesesBalance++;
                } else if (c == ')') {
                    parenthesesBalance--;
                } else if (c == '[') {
                    bracketsBalance++;
                } else if (c == ']') {
                    bracketsBalance--;
                } else if (c == '{') {
                    bracesBalance++;
                } else if (c == '}') {
                    bracesBalance--;
                }
            }
        }

        prevC = c;
    }

    if (parenthesesBalance == 0 && bracketsBalance == 0 && bracesBalance == 0) {
        return 0;
    } else {
        return -1;
    }
}

void checkQuotes(char code[MAX_LENGTH], int* inSingleQuotes, int* inDoubleQuotes) {
    int i, c, prevC, escaped = 0;

    for (i = 0; code[i] != '\0'; i++) {
        c = code[i];

        if (c == '\\' && prevC != '\\') {
            escaped = 1;
        } else if (!escaped) {
            if (c == '\'' && *inSingleQuotes) {
                *inSingleQuotes = 0;
                break;
            } else if (c == '\'' && !*inSingleQuotes) {
                *inSingleQuotes = 1;
                break;
            } else if (c == '"' && *inDoubleQuotes) {
                *inDoubleQuotes = 0;
                break;
            } else if (c == '"' && !*inDoubleQuotes) {
                *inDoubleQuotes = 1;
                break;
            }
        } else {
            escaped = 0;
        }

        prevC = c;
    }
}

以上代码实现了一个简单的代码检查器,用于检查代码中的圆括号、方括号和大括号是否平衡。代码首先通过getchar()函数从标准输入中读取代码,并存储在字符数组code中。然后,通过checkBalance()函数检查代码中的圆括号、方括号和大括号是否平衡,如果平衡则输出相应的提示信息。

checkBalance()函数遍历code数组,通过检查各种符号的出现次数来判断是否平衡。同时,它还使用checkQuotes()函数来处理单引号和双引号中的情况。

checkQuotes()函数遍历code数组,通过检查引号的出现次数和引号中的转义字符来判断引号是否成对出现。

请注意,此示例代码仅检查圆括号、方括号和大括号的平衡情况,不检查其他类型

本文内容通过AI工具匹配关键字智能整合而成,仅供参考,火山引擎不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系service@volcengine.com进行反馈,火山引擎收到您的反馈后将及时答复和处理。
展开更多
面向开发者的云福利中心,ECS 60元/年,域名1元起,助力开发者快速在云上构建可靠应用

社区干货

得物AI平台-KubeAI推理训练引擎设计和实践

kxNTE3ODU0NA==&mid=2247490514&idx=1&sn=7169970eb0bd15e6e8b7214ccbb6ea57&scene=21#wechat_redirect)一文,向大家介绍了KubeAI的建设和在业务中的落地过程。**本文,我们将重点介绍下KubeAI平台在推理、训练和模型... 训练任务,使用2卡V100训练,参数调整如下:``` batch_size=32 CPU = 12 ---> 调整为 24num-workers = 4 ---> 调整为 11```调整后训练300 step总消耗时405s,整体训练时间减少45%左右(从10天...

CVPR 2024 | CAMixerSR 动态注意力分配的超分辨率加速框架

本文提出了一种名为CAMixerSR的超分框架,可以做到内容感知,通过对Conv和Self-Attention的分配做到计算量的大幅优化。![picture.image](https://p3-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/db682b7a70da4acebe2a771be9494d5f~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1715012433&x-signature=k1T6s8Q18hqADaZUMQDVU4b9Kmc%3D)论文地址:http://arxiv.org/abs/2402.19289## 方法![picture.ima...

10 个问题带你了解 Compose Multiplatform 1.0 |社区征文

Jetpack Compose 是 Google 针对 Android 推出的新一代声明式 UI 工具包,完全基于 Kotlin 打造,天然具备了跨平台的使用基础。JetBrains 以 Jetpack Compose(后文简称 compose-android)为基础,相继发布了 compose-desktop 和 compose-web ,使 Compose 可以运行在更多不同平台。![image.png](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/73b0507529b24f2fb909debb7f726a11~tplv-k3u1fbpfcp-5.jpeg?)Compose Multiplatf...

【发布】ChatGLM2-6B:性能大幅提升,8-32k上下文,推理提速42%

=&rk3s=8031ce6d&x-expires=1715012453&x-signature=bSGVJBPiHAitxBzsbibF8%2BOTOtw%3D)自3月14日发布以来, ChatGLM-6B 深受广大开发者喜爱,截至 6 月24日,来自 Huggingface 上的下载量已经超过 300w。 ... 经过了 1.4T 中英标识符的预训练与人类偏好对齐训练,评测结果显示,相比于初代模型,ChatGLM2-6B 在 MMLU(+23%)、CEval(+33%)、GSM8K(+571%) 、BBH(+60%)等数据集上的性能取得了大幅度的提升,在同尺寸开源模型中具...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

K&R练习1-24-优选内容

得物AI平台-KubeAI推理训练引擎设计和实践
kxNTE3ODU0NA==&mid=2247490514&idx=1&sn=7169970eb0bd15e6e8b7214ccbb6ea57&scene=21#wechat_redirect)一文,向大家介绍了KubeAI的建设和在业务中的落地过程。**本文,我们将重点介绍下KubeAI平台在推理、训练和模型... 训练任务,使用2卡V100训练,参数调整如下:``` batch_size=32 CPU = 12 ---> 调整为 24num-workers = 4 ---> 调整为 11```调整后训练300 step总消耗时405s,整体训练时间减少45%左右(从10天...
CVPR 2024 | CAMixerSR 动态注意力分配的超分辨率加速框架
本文提出了一种名为CAMixerSR的超分框架,可以做到内容感知,通过对Conv和Self-Attention的分配做到计算量的大幅优化。![picture.image](https://p3-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/db682b7a70da4acebe2a771be9494d5f~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1715012433&x-signature=k1T6s8Q18hqADaZUMQDVU4b9Kmc%3D)论文地址:http://arxiv.org/abs/2402.19289## 方法![picture.ima...
10 个问题带你了解 Compose Multiplatform 1.0 |社区征文
Jetpack Compose 是 Google 针对 Android 推出的新一代声明式 UI 工具包,完全基于 Kotlin 打造,天然具备了跨平台的使用基础。JetBrains 以 Jetpack Compose(后文简称 compose-android)为基础,相继发布了 compose-desktop 和 compose-web ,使 Compose 可以运行在更多不同平台。![image.png](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/73b0507529b24f2fb909debb7f726a11~tplv-k3u1fbpfcp-5.jpeg?)Compose Multiplatf...
【发布】ChatGLM2-6B:性能大幅提升,8-32k上下文,推理提速42%
=&rk3s=8031ce6d&x-expires=1715012453&x-signature=bSGVJBPiHAitxBzsbibF8%2BOTOtw%3D)自3月14日发布以来, ChatGLM-6B 深受广大开发者喜爱,截至 6 月24日,来自 Huggingface 上的下载量已经超过 300w。 ... 经过了 1.4T 中英标识符的预训练与人类偏好对齐训练,评测结果显示,相比于初代模型,ChatGLM2-6B 在 MMLU(+23%)、CEval(+33%)、GSM8K(+571%) 、BBH(+60%)等数据集上的性能取得了大幅度的提升,在同尺寸开源模型中具...

K&R练习1-24-相关内容

【第二季度】火山引擎云原生产品服务动态 - Part.1

[picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/78aa80f27eb8495ba211fb3ba5308361~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714839660&x-signature=YYLpPlML2o03CtS%2FfGoLN%2BDaXQU%3D)来源 |火山引擎云原生团队 **New Features****产品新特性速览*** 容器服务 VKE 支持 NodeLocal DNS 能力,支持 Kubernetes v1.24,新增监控模块* 镜像仓库...

Excelize 开源基础发布 2.8.1 版本,2024 年首个更新

[picture.image](https://p3-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/c32cb84772fc404eb8367579ebbaa841~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714926033&x-signature=kSbWptFekf2Jb6DXUuN%2F1EnNLoA%3D)Excelize 是 Go 语言编写的用于操作电子表格办公文档的开源基础库,基于 ISO/IEC 29500、ECMA-376 国际标准。可以使用它来读取、写入由 Microsoft Excel、WPS、Apache OpenOffice、LibreOf...

记录时光爬过 2023 年 AI 所留下痕迹,那么 24 年的 AI 还神秘吗?

=&rk3s=8031ce6d&x-expires=1714753238&x-signature=uQ7tOUlst4myUGpy6mZJpisIvI8%3D)记录时光爬过2023年AI所留下痕迹,那么24年的AI还神秘吗?# 前言23年,一个大家都值得深深回忆的一年,这一年大家真的是都很辛... 训练的,都是在原来对话模型上通过对话的方式进行输出约束呈现内容的。![picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/65ea8d790e5644fc8584955fd093b1c5~tplv-tlddhu82om-im...

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

干货|从用户分群,看企业营销如何找到“最佳”受众

[picture.image](https://p3-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/814f1cdf6e384f8c8a9d26e3e7d53610~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1715012447&x-signature=cq1bkPx1i... 基于模型是根据预先训练好的算法模型来划分用户,比如Lookalike模型、回购预测模型等;基于标签是根据预先打好的标签来分类用户,比如消费偏好、购买渠道等。 ![picture.image](https://p3-volc-community-...

Apache Pulsar 在火山引擎 EMR 的集成与场景

> 更多技术交流、求职机会,欢迎关注**字节跳动数据平台微信公众号,回复【1】进入官方交流群** 近年来,基于云原生架构的新一代消息队列和流处理引擎 Apache Pulsar 在大数据领域发挥着愈发重要的作用,其应用场... =&rk3s=8031ce6d&x-expires=1715012491&x-signature=cqtCl7Hj%2BOvbFzfQ3UO24ZVcR4k%3D)数据中台的大数据生产、服务体系,数据来源于交易系统、日志、IoT、消息、文件等,通过数据集成进入到数据湖中,然后经过数据...

如何在火山引擎云上部署 Stable Diffusion

训练/推理软硬件方案等技术实践,推出了一系列高性价的 AI 基础设施。为了让对 AIGC 感兴趣的开发者感受 AI 的魅力,本文将以 Stable Diffusion 模型为例,结合大模型企业常规工程化技术实践,演示如何在火山引擎云上部署用户自己的 Stable Diffusion 服务。**Stable Diffusion 环境依赖**如果想把 Stable Diffusion 部署在云端,用户一般需要用到以下产品及服务:* 容器服务 VKE(Kubernetes v1.24)* 镜像仓库 CR* ...

万字长文带你弄透Transformer原理|社区征文

[picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/5261018a5d124033819cc0f8d0e24fea~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1715012502&x-signature=1QZaPMNIP... 分别为Masked Multi-head Attention+Add&Norm 、Multi-Head Attention+Add&Norm 、 Feed Forward+Add&Norm 和 Linear+Softmax。​  我觉得这部分最难理解的就是训练和测试是不同的,下面我将分为训练阶段和测试...

使用 KubeRay 和 Kueue 在 Kubernetes 中托管 Ray 工作负载

最后通过 ray.get 来获取到本地。![picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/03e5a27c23a24be69373697e22382d5c~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-exp... **Ray 的生态打破了过去 AI 工程中每个模块都是固定范式的传统**——在过去,提到数据处理,大家会想到 Spark;提到训练,会想到 Torch DDP、MPI;提到推理,会想到 deployment、service;而 Ray 能够给予你足够的自...

集简云本周新增/更新:新增7大功能,10款应用,更新1款应用,新增20多个动作

**基于文档实现智能问答训练** ChatGPT文档问答是集简云基于ChatGPT能力推出的内置应用,您只需要上传文档就可以完成训练,并且使用ChatGPT基于您上传的文档进行回答。 您可以通过集简云将ChatGPT文档问答... [picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/1ef24bfab33d4bcba081a203603c6113~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714407605&x-signature=sln04%2FD...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

产品体验

体验中心

云服务器特惠

云服务器
云服务器ECS新人特惠
立即抢购

白皮书

一图详解大模型
浓缩大模型架构,厘清生产和应用链路关系
立即获取

最新活动

爆款1核2G共享型服务器

首年60元,每月仅需5元,限量秒杀
立即抢购

火山引擎增长体验专区

丰富能力激励企业快速增长
查看详情

数据智能VeDI

易用的高性能大数据产品家族
了解详情

一键开启云上增长新空间

立即咨询