[C语言字符串笔试题]字符串笔试题.docx
C语言字符串笔试题字符串笔试题 C语言的运算非常灵活,功能十分丰富,运算种类远多于其它程序设计语言。下面就由小编为大家介绍一下C语言字符串笔试题的文章,欢迎阅读。 C语言字符串笔试题篇1 对一个字符串重新排列,字母排在前面,数字排在后面,并不改变原来字母之间以及数字之间的字符顺序。 cppviewplaincopyprint? #include #include #include #defineN30 /* *函数名称:fun *创建时间:2010.12.5 *描述:对一个字符串重新排列,字母排在前面,数字排在后面,并不改变原来字母之间以及数字之间的字符顺序。 *参数:char*s,int*m *返回值:chLetter(数组chLetter的首元素地址) *局部变量:charchLetterN; *charchNumberN; *inti,j,k; */ char*fun(char*s,int*m)/参数m是通过调试才想到的 charchLetterN;/用来存放字母 charchNumberN;/用来存放数字 inti,j,k; i=0;/初始化 j=0;/j用来记录字母的个数 k=0;/k用来记录数字的个数 for(i=0;i if(si>='A'&&si='a'&&si='0'&&si=k&&i<(k+T)/在找到的k点处开始换值 wi=t2j;/换值 j+; else wi=si; returnw; /主函数 voidmain() charsN; chart1T; chart2T; inti; intm; char*p; p=NULL; printf("请输入字符串(20字符以内):"); scanf("%s",s); printf("请输入将要被替换的子字符串(仅限两个字符):"); scanf("%s",t1); printf("请输入将要用来替换的字字符串(仅限两个字符):"); scanf("%s",t2); p=fun(s,t1,t2,&m); for(i=0;i si=pi; printf("结果为:"); for(i=0;i printf("%c",si); printf("n"); C语言字符串笔试题篇3 将s所指的字符串中ASCII值为奇数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。 cppviewplaincopyprint? #include #include #include #defineN30 /* *函数名称:fun *创建时间:2010.12.6 *描述:将s所指的字符串中ASCII值为奇数的字符删除,串中剩余字符形成一个新串放在t所指的数组中。 *参数:char*s,int*m *返回值:returnt,(t为指向数组的指针) *局部变量:char*t; *chartempN; *inti,j=0; */ char*fun(char*s,int*m) char*t; chartempN;/临时的数组,用来存放t所指的数组 inti,j=0; t=temp; for(i=0;i if(si%2=0) tempj=si;/如果是偶数,赋值给t所指的数组 j+; if(si='')/找到m的值先要找出输入了多少个字符 break; *m=j;/找到m的值即输出结果的长度 tj='' returnt; /主函数 voidmain() charsN; inti; intm; char*p; p=NULL; printf("请输入字符串(30字符以内):n"); scanf("%s",s); p=fun(s,&m);/刚开始没定义出这个m来现限制指针p所指数组的长度就出现了后面两个字符乱码 for(i=0;i si=pi; printf("结果为:"); for(i=0;i printf("%c",si); printf("n"); 第 7 页 共 7 页