Rachel_zky 2021-05-21 06:32 采纳率: 22.2%
浏览 74
已采纳

c语言-截取重构字符串

【问题描述】

编写函数void fun(char *s,char *t,char *p)将未在字符串s中出现、而在字符串t中出现的字符, 形成一个新的字符串放在p中,p中字符按原字符串中字符顺序排列,但去掉重复字符。

例如: 当s为"12345", t为"8624677"时, p中的字符为: "867";

当s为”good luck”,t为”thank you very much”时,输出:”thanyverm”

#include<stdio.h>

#include<math.h>

void fun(char *s,char *t,char *p)

{

}

int main()

{

char s1[50],s2[50],s3[50];

printf("Input string s:");

gets(s1);

printf("Input string t:");

gets(s2);

fun(s1,s2,s3);

printf("result:");

puts(s3);

return 0;

}

【输入形式】输入两个字符串
【输出形式】输出一个字符串
【样例输入】

Input string s:12346

Input string t:689412356680014

【样例输出】result:8950

展开全部

  • 写回答

2条回答 默认 最新

  • qfl_sdu 2021-05-21 07:06
    关注

    代码如下,如有帮助,请采纳一下,谢谢。

    #include<stdio.h>
    #include <string>
    void fun(char *s,char *t,char *p)
    {
    	int lens = strlen(s);
    	int lent = strlen(t);
    
    	int index = 0;
    
    	for (int i = 0; i < lent; i++)
    	{
    		char c = t[i];
    		bool b = false;
    		for (int j = 0; j < lens; j++)
    		{
    			if (s[j] == c)
    			{
    				b = true;
    				break;
    			}
    		}
    		//
    		if (!b)
    		{
    			b = false;
    			for (int j = 0; j < index;j++)
    			{
    				if (p[j] == c)
    				{
    					b = true;
    					break;
    				}
    			}
    			if(!b)
    			{
    				p[index] = c;
    				index++;
    			}
    		}
    		
    
    	}
    
    }
    int main()
    {
    	char s1[50] ={0};
    	char s2[50] ={0};
    	char s3[50] = {0};
    	printf("Input string s:");
    	gets(s1);
    	printf("Input string t:");
    	gets(s2);
    	fun(s1,s2,s3);
    	printf("result:");
    	puts(s3);
    
    	getchar();
    	getchar();
    	return 0;
    }

    展开全部

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    Rachel_zky 2021-05-21 10:56

    你是用什么写的啊,我这里运行不了,一直报错

    回复
    qfl_sdu 回复 Rachel_zky 2021-05-21 11:06

    vs2008,应该没啥问题啊,你在负责代码试试,鼠标放在代码上,点出来的“复制”按钮复制

    回复
    qfl_sdu 回复 Rachel_zky 2021-05-21 11:06

    我vs2008跑过了提上来的

    回复
    展开全部6条评论
查看更多回答(1条)
编辑
预览

报告相同问题?

悬赏问题

  • ¥15 vue请求不到数据,返回状态200,数据为html
  • ¥15 访问url时不会自动调用其 Servlet的doGet()
  • ¥15 用白鹭引擎开发棋牌游戏的前端为什么这么难找
  • ¥15 MATLAB解决问题
  • ¥35 哪位专业人士知道这是什么原件吗?哪里可以买到?
  • ¥15 关于#c##的问题:treenode反序列化后获取不到上一节点和下一节点,Fullpath和Handle报错
  • ¥15 一部手机能否同时用不同的app进入不同的直播间?
  • ¥20 输入import torch显示Intel MKL FATAL ERROR,系统驱动1%,: Cannot load mkl_intel_thread.dll.
  • ¥15 点云密度大则包围盒小
  • ¥15 nginx使用nfs进行服务器的数据共享
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部