首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨

C语言字符串的处理项目案例源代码

发布于 2025-05-30 09:14:24
0
68

代码介绍基于C语言开发的字符串的处理项目,主要功能有:1.输入字符串2.输出字符串3.字符串排序4.字符串回文判断代码比较简单,如有其字符串相关的功能自己可以加上,增加项目的功能,可以做自己的课设设计...

代码介绍

基于C语言开发的字符串的处理项目,主要功能有:

1.输入字符串
2.输出字符串
3.字符串排序
4.字符串回文判断

代码比较简单,如有其字符串相关的功能自己可以加上,增加项目的功能,可以做自己的课设设计项目或者C语言作业参考

打开Dev-C++,新建一个项目,将下面的代码复制粘贴到里面,然后编译并运行即可

效果截图

图片alt

源代码

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
  int n;
  char* p[100];
  char temp[20];
  char str[20];
  int huiwen1[100];
void shuru() {
  
  int len = 100;//len是每个字符串最大的长度
  printf("输入字符串的个数\n");

  scanf("%d", &n);
  //定义字符串指针数组,并给每个指针分配动态内存
  
  for (int i = 0; i < n; i++) {
    p[i] = (char*)malloc(len * sizeof(char));
  }
  printf("输入字符串\n");
  //读入字符串数组
  for (int i = 0; i < n; i++) {
    scanf("%s", p[i]);
  }

}
void shuchu() {
  printf("字符串为:\n");
  for (int i = 0; i < n; i++) {
    printf("%s \n", p[i]);
  }

}
void paixu() {
  for (int i = 0; i < n - 1; i++)
    for (int j = i + 1; j < n; j++)
    {
      if (strcmp(p[i], p[j]) > 0)
      {
        strcpy(temp, p[i]);
        strcpy(p[i], p[j]);
        strcpy(p[j], temp);
      }
    }
  printf("排序成功!\n");
  printf("字符串为:\n");
  for (int i = 0; i < n; i++) {
    printf("%s \n", p[i]);
  }

}
int fun(const char* p)
{
  int i;
  int len = strlen(temp);
  for (i = 0; i <= len; i++) {
    if (temp[i] == temp[len - 1])
      len--;
    else
      return 0;

  }
  return 1;
}

void huiwen() {
  for (int j = 0; j < n; j++) {
    strcpy(temp, p[j]);
    int n = fun(temp);
    if (n == 1)
      huiwen1[j]=1;
    else if (n == 0)
      huiwen1[j] = 0;
  }
  printf("字符串回文判断结果为:\n");
  for (int i = 0; i < n; i++) {
    printf("%s\t%d \n", p[i],huiwen1[i]);
  }

}
void menu() {
  printf("----------------【字符串的处理】------------------\n");
  printf("\t\t0.退出\n");
  printf("\t\t1.输入字符串\n");
  printf("\t\t2.输出字符串\n");
  printf("\t\t3.字符串排序\n");
  printf("\t\t4.字符串回文判断\n");
  printf("--------------------------------------------------\n");


}
void keydown() {
  int choice = 0;
  scanf("%d", &choice);
  switch (choice) {
  case 0:
    printf("正常退出!");
    system("pause");
    exit(0);
    break;
  case 1:
    printf("----------------【输入字符串】------------------\n");
    shuru();
    break;
  case 2:
    printf("----------------【输出字符串】------------------\n");
    shuchu();
    break;
  case 3:
    printf("----------------【字符串排序】------------------\n");
    paixu();
    break;
  case 4:
    printf("----------------【字符串回文判断】------------------\n");
    huiwen();
    break;
  default:
    printf("选择错误,重新输入\n");
    system("pause");
    break;
  }
}
int main(){
  while (1) {
    menu();
    keydown();
    system("pause");
    system("cls");
  }
  

  system("pause");
  
  return 0;

}
评论
一个月内的热帖推荐
宁儿
Lv.1来自QQ

452

帖子

22

小组

1735

积分

赞助商广告
站长交流