c语言字符串第一位0,C语言字符串笔试题_0.doc

C语言字符串笔试题

C语言的运算非常灵活,功能十分丰富,运算种类远多于其它程序设计语言。下面就由为大家介绍一下C语言字符串笔试题的文章,欢迎阅读。

C语言字符串笔试题篇1

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

[cpp] vie plain copy print?

#include

#include

#include

#define N 30

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

*函数名称: fun

*创建时间: 2010125

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

*参 数: char * s,int *m

*返 回 值: chLetter(数组chLetter[]的首元素地址)

*局部变量: char chLetter[N];

* char chNumber[N];

* int i,j,k;

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

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

{

char chLetter[N]; //用来存放字母

char chNumber[N]; //用来存放数字

int i,j,k;

i=0; //初始化

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

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

for (i=0; i

{

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

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

{

chLetter[j]=s[i];

j++;

}

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

{

chNumber[k]=s[i];

k++;

}

}

chLetter[j]=

chNumber[k]=

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

strcat(chLetter,chNumber);

return chLetter;

}

//主函数

void main()

{

char s[N];

int i;

int m;

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] vie plain copy print?

#include

#include

#include

#define N 30 //s所指字符串的最大长度

#define T 2 //t1和t2所指字符串的长度

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

*函数名称: fun

*创建时间: 2010125

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

*参 数: char * s,char * t1, char * t2,int *m

*返 回 值: (数组[]的首元素地址)

*局部变量: char [N];

* char temp[T];

* char t1temp[T];

* int i,j,k,l;

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

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

{

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

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

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

int i,j,k,l;

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

for (i=0; i

{

t1temp[i]=t1[i];

}

t1temp[T]=

//求m所指的值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值