C语言实战项目(AI代码)

简介: C语言实战项目(AI代码)

是的,你没有听错,用C语言编写一个简单的AI代码,功能十分简单,仅供娱乐,重要的是其中有几个实用性较强的自定义函数

废话不多说,先上代码

#include <stdio.h>
#include <string.h>
//转换大小写
void RemoveLetter(char* str);
//删除多余空格
void RemoveSpace(char* str);
//疑问词转换
void TurnInterrogativewords(char* str);
//问号转成感叹号
void TurnSymbol(char* str);
//第一人称改第二人称
void TurnFirstperson(char* str);
void RemoveLetter(char* str)
{
  for (int i = 0; str[i] != '\0'; i++)
  {
    if (str[i] >= 'A' && str[i] <= 'Z' && str[i] != 'I')
    {
      str[i] += 32;
    }
  }
}
void RemoveSpace(char* str)
{
  char* p = str;
  int i = 0;
  while (*p)
  {
    if (str[0] == ' ')
      p++;
    if ((*(p + 1) < 'a' || *(p + 1) > 'z') && (*(p + 1) < 'A' || *(p + 1) > 'Z') && (*(p + 1) < '0' || *(p + 1) > '9'))
    {
      if (*p == ' ')
        p++;
    }
    if (*(p + 1) == '\0' && *p == ' ')
      break;
    str[i++] = *p;
    if (*p == ' ')
    {
      int count = 0;
      int j = 0;
      for (j = 0;; j++)
      {
        if (*(p + j) == ' ')
          count++;
        else break;
      }
      p += count - 1;
    }
    p++;
  }
  str[i] = '\0';
}
void TurnInterrogativewords(char* str)
{
  char* p = str;
  int k = 0;
  while (*p)
  {
    str[k++] = *p;
    if ((*p == 'c' || *p == 'C') && (*(p - 1) == ' ' || (*(p - 1) < 'a' || *(p - 1) > 'z') && (*(p - 1) < 'A' || *(p - 1) > 'Z') && (*(p - 1) < '0' || *(p - 1) > '9')))
    {
      if (*(p + 1) == 'a' && *(p + 2) == 'n' && *(p + 3) == ' ' && *(p + 4) == 'y' && *(p + 5) == 'o' && *(p + 6) == 'u' && (*(p + 7) == ' ' || (*(p + 7) < 'a' || *(p + 7) > 'z') && (*(p + 7) < 'A' || *(p + 7) > 'Z') && (*(p + 7) < '0' || *(p + 7) > '9')))
      {
        char ch1[] = "I can  ";
        int i = 0;
        for (i = 0; ch1[i] != '\0'; i++)
        {
          *(p + i) = ch1[i];
        }
      }
      if (*(p + 1) == 'o' && *(p + 2) == 'u' && *(p + 3) == 'l' && *(p + 4) == 'd' && *(p + 5) == ' ' && *(p + 6) == 'y' && *(p + 7) == 'o' && *(p + 8) == 'u' && (*(p + 9) == ' ' || (*(p + 9) < 'a' || *(p + 9) > 'z') && (*(p + 9) < 'A' || *(p + 9) > 'Z') && (*(p + 9) < '0' || *(p + 9) > '9')))
      {
        char ch2[] = "I could  ";
        int i = 0;
        for (i = 0; ch2[i] != '\0'; i++)
        {
          *(p + i) = ch2[i];
        }
      }
    }
    p++;
  }
  str[k] = '\0';
}
void TurnSymbol(char* str)
{
  char* p = str;
  int i = 0;
  while (*p)
  {
    if (*p == '?')
      *p = '!';
    str[i++] = *p;
    p++;
  }
  str[i] = '\0';
}
void TurnFirstperson(char* str)
{
  char* p = str;
  int j = 0;
  while (*p)
  {
    char ch[] = "you";
    if (*p == 'I' && ((*(p + 1) < 'A' || *(p + 1) > 'Z') && (*(p + 1) < 'a' || *(p + 1) > 'z') || *(p + 1) == ' '))
    {
      char str1[1000];
      for (int i = 0; ; i++)
      {
        str1[i] = *(p + 1 + i);
        if (*(p + 1 + i) == '\0')
          break;
      }
      for (int i = 0; ch[i] != '\0'; i++)
      {
        *(p + i) = ch[i];
      }
      for (int i = 0; ; i++)
      {
        *(p + 3 + i) = str1[i];
        if (str1[i] == '\0')
          break;
      }
    }
    if (*p == 'm' && *(p + 1) == 'e' && ((*(p + 2) < 'A' || *(p + 2) > 'Z') && (*(p + 2) < 'a' || *(p + 2) > 'z') && (*(p - 1) < 'A' || *(p - 1) > 'Z') && (*(p - 1) < 'a' || *(p - 1) > 'z') || (*(p + 2) == ' ' && *(p - 1) == ' ')))
    {
      char str2[1000];
      for (int i = 0; ; i++)
      {
        str2[i] = *(p + 2 + i);
        if (*(p + 1 + i) == '\0')
          break;
      }
      for (int i = 0; ch[i] != '\0'; i++)
      {
        *(p + i) = ch[i];
      }
      for (int i = 0; ; i++)
      {
        *(p + 3 + i) = str2[i];
        if (str2[i] == '\0')
          break;
      }
    }
    str[j++] = *p;
    p++;
  }
  str[j] = '\0';
}
int main()
{
  char chat[1000];
  char str[1000];
  getchar();
  while (1)
  {
    gets(chat);
    strcpy(str, chat);
    printf("%s\n", str);
    RemoveSpace(str);
    TurnFirstperson(str);
    TurnInterrogativewords(str);
    TurnSymbol(str);
    RemoveSpace(str);
    RemoveLetter(str);
    printf("AI: %s\n", str);
  }
  return 0;
}
相关文章
|
18天前
|
人工智能 移动开发 JavaScript
如何用uniapp打包桌面客户端exe包,vue或者uni项目如何打包桌面客户端之electron开发-优雅草央千澈以开源蜻蜓AI工具为例子演示完整教程-开源代码附上
如何用uniapp打包桌面客户端exe包,vue或者uni项目如何打包桌面客户端之electron开发-优雅草央千澈以开源蜻蜓AI工具为例子演示完整教程-开源代码附上
107 18
|
5天前
|
人工智能 机器人 UED
不怕不会设计logo拉-本篇教你如何使用AI设计logo-如何快速用AI设计logo-附上AI绘图logo设计的咒语-优雅草央千澈-实战教程
不怕不会设计logo拉-本篇教你如何使用AI设计logo-如何快速用AI设计logo-附上AI绘图logo设计的咒语-优雅草央千澈-实战教程
108 85
不怕不会设计logo拉-本篇教你如何使用AI设计logo-如何快速用AI设计logo-附上AI绘图logo设计的咒语-优雅草央千澈-实战教程
|
27天前
|
机器学习/深度学习 人工智能 物联网
AI赋能大学计划·大模型技术与应用实战学生训练营——湖南大学站圆满结营
12月14日,由中国软件行业校园招聘与实习公共服务平台携手魔搭社区共同举办的AI赋能大学计划·大模型技术与产业趋势高校行AIGC项目实战营·湖南大学站圆满结营。
AI赋能大学计划·大模型技术与应用实战学生训练营——湖南大学站圆满结营
|
3天前
|
人工智能 数据处理 语音技术
Pipecat实战:5步快速构建语音与AI整合项目,创建你的第一个多模态语音 AI 助手
Pipecat 是一个开源的 Python 框架,专注于构建语音和多模态对话代理,支持与多种 AI 服务集成,提供实时处理能力,适用于语音助手、企业服务等场景。
41 23
Pipecat实战:5步快速构建语音与AI整合项目,创建你的第一个多模态语音 AI 助手
|
1月前
|
机器学习/深度学习 人工智能 JSON
【实战干货】AI大模型工程应用于车联网场景的实战总结
本文介绍了图像生成技术在AIGC领域的发展历程、关键技术和当前趋势,以及这些技术如何应用于新能源汽车行业的车联网服务中。
524 36
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
MMAudio:开源 AI 音频合成项目,根据视频或文本生成同步的音频
MMAudio 是一个基于多模态联合训练的高质量 AI 音频合成项目,能够根据视频内容或文本描述生成同步的音频。该项目适用于影视制作、游戏开发、虚拟现实等多种场景,提升用户体验。
121 7
MMAudio:开源 AI 音频合成项目,根据视频或文本生成同步的音频
|
1月前
|
机器学习/深度学习 人工智能 物联网
AI赋能大学计划·大模型技术与应用实战学生训练营——电子科技大学站圆满结营
12月05日,由中国软件行业校园招聘与实习公共服务平台携手阿里魔搭社区共同举办的AI赋能大学计划·大模型技术与产业趋势高校行AIGC项目实战营·电子科技大学站圆满结营。
AI赋能大学计划·大模型技术与应用实战学生训练营——电子科技大学站圆满结营
|
1月前
|
人工智能 自然语言处理 算法
AI时代的企业内训全景图:从案例到实战
作为一名扎根在HR培训领域多年的“老兵”,我越来越清晰地感受到,企业内训的本质其实是为企业持续“造血”。无论是基础岗的新人培训、技能岗的操作规范培训,还是面向技术中坚力量的高阶技术研讨,抑或是管理层的战略思维提升课,内训的价值都是在帮助企业内部提升能力水平,进而提高组织生产力,减少对外部资源的依赖。更为重要的是,在当前AI、大模型、Embodied Intelligence等新兴技术快速迭代的背景下,企业必须不断为人才升级赋能,才能在市场竞争中保持领先。
|
26天前
|
人工智能 安全 图形学
【AI落地应用实战】篡改检测技术前沿探索——从基于检测分割到大模型
在数字化洪流席卷全球的当下,视觉内容已成为信息交流与传播的核心媒介,然而,随着PS技术和AIGC技术的飞速发展,图像篡改给视觉内容安全带来了前所未有的挑战。 本文将探讨篡改检测技术的现实挑战,分享篡改检测技术前沿和最新应用成果。
|
机器学习/深度学习 人工智能 算法
AI项目成功的4要素
如何确保你的项目保持在正轨上。如果你是产品经理,想要用机器学习来做一些事情,这里列出了 4 件最重要的事情

热门文章

最新文章