最新面试考试题目含答案C语言字符串笔试题0.docx

上传人:b****4 文档编号:3535981 上传时间:2022-11-23 格式:DOCX 页数:8 大小:16.08KB
下载 相关 举报
最新面试考试题目含答案C语言字符串笔试题0.docx_第1页
第1页 / 共8页
最新面试考试题目含答案C语言字符串笔试题0.docx_第2页
第2页 / 共8页
最新面试考试题目含答案C语言字符串笔试题0.docx_第3页
第3页 / 共8页
最新面试考试题目含答案C语言字符串笔试题0.docx_第4页
第4页 / 共8页
最新面试考试题目含答案C语言字符串笔试题0.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

最新面试考试题目含答案C语言字符串笔试题0.docx

《最新面试考试题目含答案C语言字符串笔试题0.docx》由会员分享,可在线阅读,更多相关《最新面试考试题目含答案C语言字符串笔试题0.docx(8页珍藏版)》请在冰豆网上搜索。

最新面试考试题目含答案C语言字符串笔试题0.docx

最新面试考试题目含答案C语言字符串笔试题0

C语言字符串笔试题

C语言的运算非常灵活,功能十分丰富,运算种类远多于其它程序设计语言。

下面就由为大家介绍一下C语言字符串笔试题的文章,欢迎阅读。

C语言字符串笔试题篇1

对一个字符串重新排列,字母排在前面,数字排在后面,并不改变原来字母之间以及数字之间的字符顺序。

[cpp]vieplaincopyprint?

#include

#include

#include

#defineN30

/***********************************************

*函数名称:

fun

*创建时间:

2010125

*描述:

对一个字符串重新排列,字母排在前面,数字排在后面,并不改变原来字母之间以及数字之间的字符顺序。

*参数:

char*s,int*m

*返回值:

chLetter(数组chLetter[]的首元素地址)

*局部变量:

charchLetter[N];

*charchNumber[N];

*inti,j,k;

************************************************/

char*fun(char*s,int*m)//参数m是通过调试才想到的

{

charchLetter[N];//用来存放字母

charchNumber[N];//用来存放数字

inti,j,k;

i=0;//初始化

j=0;//j用来记录字母的个数

k=0;//k用来记录数字的个数

for(i=0;i

{

if(s[i]=As[i]=Z//将字母存入chLetter[]

||s[i]=as[i]=z)

{

chLetter[j]=s[i];

j++;

}

if(s[i]=0s[i]=9)//将数字存入chNumber[]

{

chNumber[k]=s[i];

k++;

}

}

chLetter[j]=

chNumber[k]=

*m=j+k;//用来返回最后输入和输出时字符的个数

strcat(chLetter,chNumber);

returnchLetter;

}

//主函数

voidmain()

{

chars[N];

inti;

intm;

char*p;

p=NULL;

printf(请输入字符串(30字符以内):

n

scanf(%s,s);

p=fun(s,//刚开始没定义出这个m来现限制指针p所指数组的长度就出现了后面两个字符乱码

for(i=0;i

{

s[i]=p[i];

}

printf(结果为:

for(i=0;i

{

printf(%c,s[i]);

}

printf(n

}

C语言字符串笔试题篇2

将s所指字符串中最后一次出现的与t1所指字符串相同的子串替换为t2所指字符串。

[cpp]vieplaincopyprint?

#include

#include

#include

#defineN30//s所指字符串的最大长度

#defineT2//t1和t2所指字符串的长度

/***********************************************

*函数名称:

fun

*创建时间:

2010125

*描述:

将s所指字符串中最后一次出现的与t1所指字符串相同的子串替换为t2所指字符串

*参数:

char*s,char*t1,char*t2,int*m

*返回值:

(数组[]的首元素地址)

*局部变量:

char[N];

*chartemp[T];

*chart1temp[T];

*inti,j,k,l;

************************************************/

char*fun(char*s,char*t1,char*t2,int*m)//m的作用和第一题一样,没m最后两个字符会乱码(想寻求其他方法)

{

char[N];//用来存放处理后的字符串

chartemp[T];//用来存放从s所指字符串中截取的子串

chart1temp[T];//用来存放t1所指字符串

inti,j,k,l;

//向t1temp中存入t1所指字符串

for(i=0;i

{

t1temp[i]=t1[i];

}

t1temp[T]=

//求m所指的值

for(i=0;i

{

if(s[i]==)

{

*m=i;

}

}

//寻找相同时的最后一个字符的下标

for(i=0;i

{

l=0;

for(j=i;j(i+T);j++,l++)//截取长度为T的子串存到temp[]中

{

temp[l]=s[j];

}

temp[T]=

if(strcmp(t1temp,temp)==0)

{

k=i;//k记录相同时的最后一个字符的下标

}

}

for(i=0;i

{

j=0;

if(i=ki(k+T))//在找到的k点处开始换值

{

[i]=t2[j];//换值

j++;

}

else

{

[i]=s[i];

}

}

return;

}

//主函数

voidmain()

{

chars[N];

chart1[T];

chart2[T];

inti;

intm;

char*p;

p=NULL;

printf(请输入字符串(20字符以内):

scanf(%s,s);

printf(请输入将要被替换的子字符串(仅限两个字符):

scanf(%s,t1);

printf(请输入将要用来替换的字字符串(仅限两个字符):

scanf(%s,t2);

p=fun(s,t1,t2,

for(i=0;i

{

s[i]=p[i];

}

printf(结果为:

for(i=0;i

{

printf(%c,s[i]);

}

printf(n

}

C语言字符串笔试题篇3

将s所指的字符串中ASCII值为奇数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。

[cpp]vieplaincopyprint?

#include

#include

#include

#defineN30

/***********************************************

*函数名称:

fun

*创建时间:

2010126

*描述:

将s所指的字符串中ASCII值为奇数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。

*参数:

char*s,int*m

*返回值:

returnt,(t为指向数组的指针)

*局部变量:

char*t;

*chartemp[N];

*inti,j=0;

************************************************/

char*fun(char*s,int*m)

{

char*t;

chartemp[N];//临时的数组,用来存放t所指的数组

inti,j=0;

t=temp;

for(i=0;i

{

if(s[i]%2==0)

{

temp[j]=s[i];//如果是偶数,赋值给t所指的数组

j++;

if(s[i]==)//找到m的值先要找出输入了多少个字符

{

break;

}

}

}

*m=j;//找到m的值即输出结果的长度

t[j]=

returnt;

}

//主函数

voidmain()

{

chars[N];

inti;

intm;

char*p;

p=NULL;

printf(请输入字符串(30字符以内):

n

scanf(%s,s);

p=fun(s,//刚开始没定义出这个m来现限制指针p所指数组的长度就出现了后面两个字符乱码

for(i=0;i

{

s[i]=p[i];

}

printf(结果为:

for(i=0;i

{

printf(%c,s[i]);

}

printf(n

}

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1