前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >每日一题(数字颠倒,单词倒排)

每日一题(数字颠倒,单词倒排)

作者头像
用户11039545
发布2024-03-28 17:37:48
600
发布2024-03-28 17:37:48
举报
文章被收录于专栏:c语言c语言

数字颠倒_牛客题霸_牛客网 (nowcoder.com)

代码语言:javascript
复制
#include <stdio.h>

int main() {
    char arr[100];
    gets(arr);
    int len=strlen(arr);
    for(int i=len-1;i>=0;i--)
    {
        printf("%c",arr[i]);
    }
    return 0;
}

单词倒排_牛客题霸_牛客网 (nowcoder.com)

代码语言:javascript
复制
#include <stdio.h>
#include <string.h>
//思路:寻找非英文字母,若其后一个为英文字母则开始输出,否则不输出
int isEnglish(char c) { //判断是否为英文字母
    int flag = 0;
    if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z'))//判断字符c是否为小写或大写英文字母
 //是
        flag = 1;
    else//不是
        flag = 0;
    return flag;
}
int main() {
    char str[10001] = {0};
    gets(str);//使用 gets 函数从标准输入读取一个字符串并存储在 str 中
    int len = strlen(str);
    for (int i = len - 1; i >= 0; i--) //从字符串的最后一个字符开始,向前遍历每个字符{
        if (isEnglish(str[i]) == 0 && isEnglish(str[i + 1]) == 1)//检查当前字符 str[i] 是否不是英文字母,而其后一个字符 str[i + 1] 是否是英文字母
 {
            int j = i + 1;
            while (isEnglish(str[j]) == 1) {
                //一个单词
                printf("%c", str[j]);
                j++;
            }
            printf(" ");
        }
    }
    //第一个字符为字母
    if (isEnglish(str[0]) == 1) {
        printf("%c", str[0]);//如果 str[i + 1] 是英文字母,则继续检查并打印所有连续的英文字母,直到遇到非英文字母为止
        int j = 1;
        while (isEnglish(str[j]) == 1) {
            //一个单词
            printf("%c", str[j]);
            j++;
        }
    }
    return 0;
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-02-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档