博客
关于我
1009 说反话 (PAT)
阅读量:507 次
发布时间:2019-03-07

本文共 1179 字,大约阅读时间需要 3 分钟。

这里有一个简单的C程序,能够将输入的英语句子中的单词顺序颠倒:

#include 
#include
#include
int main() {
char str[100];
int s, p, e, j, i;
gets(str);
s = strlen(str);
p = s;
// 分割单词并存储到数组words中
char *words = malloc(p * sizeof(char));
words[0] = '\0';
int word_count = 0;
for (i = s - 1; i >= 0; i--) {
if (str[i] == ' ') {
if (word_count > 0) {
words[word_count] = '\0';
word_count++;
}
j = i + 1;
while (j < s && str[j] != ' ') {
j++;
}
for (k = 0; k < j - i - 1; k++) {
words[word_count + k] = str[i + 1 + k];
}
words[word_count] = '\0';
word_count++;
} else {
// 非空格字符,直接加入当前单词
if (i > p) {
// 展示扩展字符串的处理
// (在实际应用中,应先展开发商提供的动态内存分配方法)
}
}
}
if (word_count > 0) {
// 输出倒序的单词
printf("%s", words);
}
free(words);
return 0;
}

这个程序的工作流程是:

  • 读取输入字符串
  • 逆序遍历字符串,识别并统计单词
  • 将发现的单词倒转排列
  • 输出倒序后的句子
  • 如果需要处理更复杂的文本处理需求,可以考虑使用更专业的文本处理库或工具。

    转载地址:http://ajojz.baihongyu.com/

    你可能感兴趣的文章
    node模块的本质
    查看>>
    node环境下使用import引入外部文件出错
    查看>>
    node环境:Error listen EADDRINUSE :::3000
    查看>>
    Node的Web应用框架Express的简介与搭建HelloWorld
    查看>>
    Node第一天
    查看>>
    node编译程序内存溢出
    查看>>
    Node读取并输出txt文件内容
    查看>>
    node防xss攻击插件
    查看>>
    noi 1996 登山
    查看>>
    noi 7827 质数的和与积
    查看>>
    NOI-1.3-11-计算浮点数相除的余数
    查看>>
    noi.ac #36 模拟
    查看>>
    NOI2010 海拔(平面图最大流)
    查看>>
    NOIp2005 过河
    查看>>
    NOIP2011T1 数字反转
    查看>>
    NOIP2014 提高组 Day2——寻找道路
    查看>>
    noip借教室 题解
    查看>>
    NOIP模拟测试19
    查看>>
    NOIp模拟赛二十九
    查看>>
    Vue3+element plus+sortablejs实现table列表拖拽
    查看>>