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;
}
相关文章
|
2月前
|
人工智能 IDE Java
AI Coding实践:CodeFuse + prompt 从系分到代码
在蚂蚁国际信贷业务系统建设过程中,技术团队始终面临双重考验:一方面需应对日益加速的需求迭代周期,满足严苛的代码质量规范与金融安全合规要求;另一方面,跨地域研发团队的协同效率与代码标准统一性,在传统开发模式下逐渐显现瓶颈。为突破效率制约、提升交付质量,我们积极探索人工智能辅助代码生成技术(AI Coding)的应用实践。本文基于蚂蚁国际信贷技术团队近期的实际项目经验,梳理AI辅助开发在金融级系统快速迭代场景中的实施要点并分享阶段性实践心得。
548 25
AI Coding实践:CodeFuse + prompt 从系分到代码
|
2月前
|
人工智能 机器人 测试技术
AI写的代码为何金玉其外败絮其中
本文分析AI编码看着好看其实很烂的现象、原因,探索行之有效的的解决方案。并从理论上延伸到如何更好的与AI协作的方式上。
107 3
|
2月前
|
人工智能 缓存 运维
【智造】AI应用实战:6个agent搞定复杂指令和工具膨胀
本文介绍联调造数场景下的AI应用演进:从单Agent模式到多Agent协同的架构升级。针对复杂指令执行不准、响应慢等问题,通过意图识别、工具引擎、推理执行等多Agent分工协作,结合工程化手段提升准确性与效率,并分享了关键设计思路与实践心得。
518 20
【智造】AI应用实战:6个agent搞定复杂指令和工具膨胀
|
2月前
|
存储 人工智能 搜索推荐
LangGraph 记忆系统实战:反馈循环 + 动态 Prompt 让 AI 持续学习
本文介绍基于LangGraph构建的双层记忆系统,通过短期与长期记忆协同,实现AI代理的持续学习。短期记忆管理会话内上下文,长期记忆跨会话存储用户偏好与决策,结合人机协作反馈循环,动态更新提示词,使代理具备个性化响应与行为进化能力。
460 10
LangGraph 记忆系统实战:反馈循环 + 动态 Prompt 让 AI 持续学习
|
2月前
|
人工智能 安全 开发工具
C3仓库AI代码门禁通用实践:基于Qwen3-Coder+RAG的代码评审
本文介绍基于Qwen3-Coder、RAG与Iflow在C3级代码仓库落地LLM代码评审的实践,实现AI辅助人工评审。通过CI流水线自动触发,结合私域知识库与生产代码同仓管理,已成功拦截数十次高危缺陷,显著提升评审效率与质量,具备向各类代码门禁平台复用推广的价值。(239字)
536 24
|
2月前
|
人工智能 IDE 开发工具
从6人日到1人日:一次AI驱动的客户端需求开发实战
从6人日到1人日:一次AI驱动的客户端需求开发实战
从6人日到1人日:一次AI驱动的客户端需求开发实战
|
2月前
|
数据采集 人工智能 JSON
Prompt 工程实战:如何让 AI 生成高质量的 aiohttp 异步爬虫代码
Prompt 工程实战:如何让 AI 生成高质量的 aiohttp 异步爬虫代码
|
3月前
|
存储 C语言
`scanf`是C语言中用于按格式读取标准输入的函数
`scanf`是C语言中用于按格式读取标准输入的函数,通过格式字符串解析输入并存入指定变量。需注意输入格式严格匹配,并建议检查返回值以确保读取成功,提升程序健壮性。
1030 0
|
11月前
|
存储 算法 C语言
【C语言程序设计——函数】素数判定(头歌实践教学平台习题)【合集】
本内容介绍了编写一个判断素数的子函数的任务,涵盖循环控制与跳转语句、算术运算符(%)、以及素数的概念。任务要求在主函数中输入整数并输出是否为素数的信息。相关知识包括 `for` 和 `while` 循环、`break` 和 `continue` 语句、取余运算符 `%` 的使用及素数定义、分布规律和应用场景。编程要求根据提示补充代码,测试说明提供了输入输出示例,最后给出通关代码和测试结果。 任务核心:编写判断素数的子函数并在主函数中调用,涉及循环结构和条件判断。
694 23
|
5月前
|
安全 C语言
C语言中的字符、字符串及内存操作函数详细讲解
通过这些函数的正确使用,可以有效管理字符串和内存操作,它们是C语言编程中不可或缺的工具。
334 15