请问这道c语言题目怎么写?

题目描述:编写一函数char*insert(char*string,charc),用于在一个已排好序(ASCII值从小到大)的字符串string(少于50个字符)中适当位... 题目描述:
编写一函数char * insert(char *string, char c),用于在一个已排好序(ASCII值从小到大)的字符串string(少于50个字符)中适当位置插入字符c,要求插入后串的序不变(从小到大),允许字符重复,函数返回插入后的字符串。 在main函数中测试该函数:从键盘分别输入有序字符串和单个字符,然后调用insert函数,并向屏幕输出插入后的字符串。 【输入形式】 从键盘分行输入有序字符串和单个字符 【输出形式】 向屏幕输出插入后的字符串 【输入样例】 abdef c 【输出样例】 abcdef 【样例说明】 从键盘输入少于50个字符的有序字符串abdef和字符c,通过调用函数char * insert(char *string, char c)将字符c插入字符串abdef,并以ASCII值从小到大排序输出

输入样式:
abdef
c

输出样式:
abcdef
展开
 我来答
White_MouseYBZ
2019-06-16 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6432万
展开全部

#include "stdio.h"

int main(int argc,char *argv[]){

int y,m,d,sum,i,w[12]={31,28,31,30,31,30,31,31,30,31,30,31};

printf("Please enter the birth year-month-day...\n");

if(scanf("%d-%d-%d",&y,&m,&d)!=3 || y<1 || m<1 || m>12 || (w[1]=y%4==0 && y%100 || y%400==0 ? 29 : 28,d>w[m-1])){

printf("Input error, exit...\n");

return 0;

}

for(sum=w[m-1]-d,i=m;i<12;sum+=w[i++]);//求第一年生日后总天数

for(i=y+1,y+=18;i<y;i++)

sum+=(365+(i%4==0 && i%100 || i%400==0));//求到18岁前一年总天数

w[1] = i%4==0 && i%100 || i%400==0 ? 29 : 28;//18岁那一年是闰年?

for(m-=2;m>=0;sum+=w[m--]);//求到18岁那一年整月天数和

printf("%d\n",sum+d);//输出

return 0;

}

代码图片和运行样例:

lfddjjnie
2019-06-13 · TA获得超过106个赞
知道小有建树答主
回答量:448
采纳率:54%
帮助的人:36.7万
展开全部
#include <iostream>
#include <string>
using namespace std;

char *strfind(char *src, char *dst)
{
int len1 = strlen(src);
int len2 = strlen(dst);
int start = len1 - 1;
int end = len2 - 1;
int i, j = len2 - 1;
for (i = start; i >= end; i--)
{
if (src[i] == dst[j])
{
j--;
if (j == -1)
{
cout << "the position is: " << i + 1 << endl;
return &src[i];
}
}
else
j = len2 - 1;
}
return NULL;
}

int main()
{
char src[100];
char dst[100];
cout << "请输入一个字符串:" << endl;
cin.getline(src, 100, '\n');
cin.clear();
cout << "请输入要查找的字符串:" << endl;
cin.getline(dst, 100, '\n');
char *temp = strfind(src, dst);
if (temp != NULL)
{
cout << "所寻找的字符串以及后面的字符串为:" << temp << endl;
}
else
cout << "no such characters!" << endl;
system("pause");
return 0;
}
追问
c语言啊兄弟
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
七深留羊幻年4155
2019-06-13 · 贡献了超过211个回答
知道答主
回答量:211
采纳率:0%
帮助的人:12.7万
展开全部
有滴,点我的头像,,,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式