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

K&R 练习 1.21

以下是解决K&R练习1.21的代码示例:

#include <stdio.h>

#define MAXLINE 1000
#define TAB_WIDTH 4

int getline(char line[], int maxline);
void entab(char to[], char from[]);

int main() {
    char line[MAXLINE];
    char entabbed[MAXLINE];

    while (getline(line, MAXLINE) > 0) {
        entab(entabbed, line);
        printf("%s", entabbed);
    }

    return 0;
}

int getline(char line[], int maxline) {
    int c, i;

    for (i = 0; i < maxline - 1 && (c = getchar()) != EOF && c != '\n'; ++i)
        line[i] = c;

    if (c == '\n') {
        line[i] = c;
        ++i;
    }

    line[i] = '\0';

    return i;
}

void entab(char to[], char from[]) {
    int i, j, k, space_count, tab_count, spaces_needed;

    i = j = 0;
    space_count = tab_count = 0;

    while (from[i] != '\0') {
        if (from[i] == ' ') {
            ++space_count;

            if (space_count == TAB_WIDTH) {
                ++tab_count;
                space_count = 0;
            }
        } else {
            for (k = 0; k < tab_count; ++k) {
                to[j] = '\t';
                ++j;
            }

            for (k = 0; k < space_count; ++k) {
                to[j] = ' ';
                ++j;
            }

            tab_count = 0;
            space_count = 0;
            to[j] = from[i];
            ++i;
            ++j;
        }
    }

    to[j] = '\0';
}

这个程序将输入的每一行中的空格转换为制表符,以便在保持正确对齐的同时减少空格的数量。它使用getline函数从标准输入读取一行,并将结果存储在line数组中。然后,entab函数line中的空格转换为制表符,并将结果存储在entabbed数组中。最后,entabbed数组的内容被打印到标准输出中。

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

社区干货

集简云4月更新合集:新增25款集成应用,更新10款应用,新增近200个可用动作

[picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/d8655ac304f24cacbca1e5f8d53ef16f~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714321208&x-signature=%2FCQQ%2F... biz=Mzg5MjcxODg4Mw==&mid=2247488484&idx=3&sn=e8eb11075233a5bc2e33e53ae22bbf16&chksm=c03889a8f74f00be9d7d4a2f2addc3f3c7d98b23a78322e551b566f7f1f2b6c99752215c7fc5&scene=21#wechat_redirect)* [集简云...

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

[picture.image](https://p3-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/2dead08c1af845179a93deed61c6a9a1~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714494080&x-signature=0%2BcvcJb... **【注:执行步骤部分的图都为自己所画,一方面希望能用自己的思路表述清楚这部分,另一方面也想在锻炼一下自己的作图水平,作图不易,恳请大家点赞支持,转载请附链接。代码演示部分参考[这篇文章](https://towardsdata...

集简云2月更新合集:新增权限管理、流程分享功能,集成18款应用,更新8款应用

ksm=c0388ea9f74f07bfdd8e08dd73e5719ad28c563047a88cad9cc8dca96ddf3061972091e29b61&scene=21#wechat_redirect) ![picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/007a27b47a83400f986fd18834d44c16~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714407605&x-signature=%2BpSQXdWt2%2BtFtHQqmGVGideQ1Y0%3D) **/****/****权限管理功能** 集简云针对...

干货 | 以一次Data Catalog架构升级为例,聊聊业务系统的性能优化

引入了字节内部的图数据库veGraph,写入时,需要业务层处理MySQL、ElasticSearch和veGraph三种存储,模型也需要同时理解关系型和图两种。更多的背景可以参照之前的[文章](https://mp.weixin.qq.com/s?__biz=MzkwMzMwOTQwMg==&mid=2247492653&idx=1&sn=2a74b3c1908049ad320a9b2b1b8e202e&scene=21#wechat_redirect)。新版本保留了原有版本全量的产品能力,将存储层替换成了Apache Atlas。然而,当我们把存量数据导入到新系统时,...

特惠活动

热门爆款云服务器

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&amp;R 练习 1.21-优选内容

集简云4月更新合集:新增25款集成应用,更新10款应用,新增近200个可用动作
[picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/d8655ac304f24cacbca1e5f8d53ef16f~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714321208&x-signature=%2FCQQ%2F... biz=Mzg5MjcxODg4Mw==&mid=2247488484&idx=3&sn=e8eb11075233a5bc2e33e53ae22bbf16&chksm=c03889a8f74f00be9d7d4a2f2addc3f3c7d98b23a78322e551b566f7f1f2b6c99752215c7fc5&scene=21#wechat_redirect)* [集简云...
万字长文带你弄透Transformer原理|社区征文
[picture.image](https://p3-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/2dead08c1af845179a93deed61c6a9a1~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714494080&x-signature=0%2BcvcJb... **【注:执行步骤部分的图都为自己所画,一方面希望能用自己的思路表述清楚这部分,另一方面也想在锻炼一下自己的作图水平,作图不易,恳请大家点赞支持,转载请附链接。代码演示部分参考[这篇文章](https://towardsdata...
集简云2月更新合集:新增权限管理、流程分享功能,集成18款应用,更新8款应用
ksm=c0388ea9f74f07bfdd8e08dd73e5719ad28c563047a88cad9cc8dca96ddf3061972091e29b61&scene=21#wechat_redirect) ![picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/007a27b47a83400f986fd18834d44c16~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714407605&x-signature=%2BpSQXdWt2%2BtFtHQqmGVGideQ1Y0%3D) **/****/****权限管理功能** 集简云针对...
干货 | 以一次Data Catalog架构升级为例,聊聊业务系统的性能优化
引入了字节内部的图数据库veGraph,写入时,需要业务层处理MySQL、ElasticSearch和veGraph三种存储,模型也需要同时理解关系型和图两种。更多的背景可以参照之前的[文章](https://mp.weixin.qq.com/s?__biz=MzkwMzMwOTQwMg==&mid=2247492653&idx=1&sn=2a74b3c1908049ad320a9b2b1b8e202e&scene=21#wechat_redirect)。新版本保留了原有版本全量的产品能力,将存储层替换成了Apache Atlas。然而,当我们把存量数据导入到新系统时,...

K&amp;R 练习 1.21-相关内容

干货 | 嵌入式数据分析最佳实践

[picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/15c03905430644a7916e89c20e0dd28e~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714494033&x-signature=R%2B1JJbFrl0rw6PWLLPMtQV9w2hE%3D)> > > 嵌入式> 数据> 分析,即在企业现有业务系统中按需集成各类数据分析能力。随着越来越多企业重视BI的部署和应用,在内部实现嵌入式数据分析也展现出强烈需求。本文将具体介绍字...

干货|高性能、高稳定、高扩展:解读ByteHouse实时导入技术演进

[picture.image](https://p3-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/e28a2998447847ac9b19ded1d87975eb~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714321227&x-signature=84368%2FW... biz=MzkwMzMwOTQwMg==&mid=2247504180&idx=1&sn=684b48d03bf9ff7964b14b36cbc799b8&chksm=c09aa001f7ed2917585fe66dfbded53e2fb5ec6cebcb961268351ef53301d960c872cedaee80&scene=21#wechat_redirect) [![...

集简云5月更新合集:新增34款集成应用,更新11款应用,新增近300个可用动作

[picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/559613a31b7f48c3b02d386e1698eba9~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714494006&x-signature=T3s1ul9aT... 21**旺店通ERP(企业版)** ![picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/c02d25007071470780c78ca26bc19acb~tplv-tlddhu82om-image....

热门爆款云服务器

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

域名注册服务

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

DCDN国内流量包100G

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

集简云8月更新合集:新增34款集成应用,更新18款应用,新增近300个可用动作

[picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/c86f6ba9d35f4447a8d0483a6d5119f1~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714494010&x-signature=FOGd1yLq4... [picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/9268e6bd72e74fa385a326c5d7d21af7~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714494010&x-signature=tUasBPXq4...

图谱构建的基石: 实体关系抽取总结与实践|社区征文

=&rk3s=8031ce6d&x-expires=1714494080&x-signature=05N1J4obUGu7id99GFvbTT%2FlDgQ%3D)1. Entity Model 1. 首先输入句子到预训练Encoder(如BERT)中去,任一token $$x_{t}$$ 得到上下文表征 $$X_{t}$$ 2.... (https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/6d571fe7401741a1b0945fd6659decc7~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=1714494080&x-signature=yINiFB5hKzbvQn1T21dWfn7r...

AIGC 推理加速:火山引擎镜像加速实践

=&rk3s=8031ce6d&x-expires=1714494042&x-signature=1xA6K8nBlAzZtGPL%2BN62OTw6WYo%3D)上图是一个较为完整的文生图模型推理业务架构示意图,展示了一个在线推理业务在训练好模型后的业务部署流程:通过 CI/CD ... type: RollingUpdate template: metadata: annotations: kubectl.kubernetes.io/restartedAt: "2023-06-21T03:43:08Z" cr...

集简云2月新增/更新:新增4大功能,19款应用,更新15款应用,新增120多个动作

biz=Mzg5MjcxODg4Mw==&mid=2247503420&idx=1&sn=7bf59ded743584866bb5a2729078391c&chksm=c03b5470f74cdd66cda986157d58ddacb6b766376dfacee688866bcd5a28a685d1fbaa561109&scene=21#wechat_redirect)... =&rk3s=8031ce6d&x-expires=1714407605&x-signature=bKGlg%2BX0AyxkIx6BK%2BsArnGT0tU%3D)ChatGPT是由OpenAI开发的一种认知语言模型。它基于Transformer网络架构,并通过预先训练大量文本数据来生成人类语言...

干货|BitSail Connector开发详解系列二:SourceSplitCoordinator

[开发详解系列一:Source](http://mp.weixin.qq.com/s?__biz=MzkwMzMwOTQwMg==&mid=2247505404&idx=1&sn=58db27f36d90e676f34c501ce4ae8302&chksm=c09aa4c9f7ed2ddfee5d266d158667e2acb81ec0c6240ab298e6d86f4b13af4213fe20c9fdce&scene=21#wechat_redirect)● **开发详解系列二:SourceSplitCoordinator**● 开发详解系列三:SourceReader● 开发详解系列四:Sink、Writer **Source Connector**=====...

快速入门

已获取访问密钥(Access Key ID 和 Secret Access Key)信息,查看 AK 和 SK 信息的具体步骤,请参见查看 AKSK 信息。 注意事项本帮助文档中所有命令均是以 Linux 或 macOS 系统为例,Windows 系统的命令格式说明,请参... 使用version命令检查工具的版本: Plain 检查工具版本./tosutil version返回结果如下: Plain tosutil version: v1.1.0operating system: darwin, arch: amd64 使用 ls 命令检查连通性: Plain 该命令会返回当前账...

特惠活动

热门爆款云服务器

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

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

一键开启云上增长新空间

立即咨询