| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:  注册  忘记密码
 
密 码:  
共有 645 人关注过本帖
标题:[求助]一个很简单的字符串问题
只看楼主 加入收藏
xingyu23
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2006-12-21
收藏
 问题点数:0 回复次数:8 
[求助]一个很简单的字符串问题

编程实现对字符串的基本处理
(不能使用strcat、strcpy、strcmp、strlen、strlwr、strupr函数)
从键盘输入三行字符串,实现以下操作:
1)按从大到小的顺序输出这三行字符串
2)根据提示将这三行字符串中的任意两行字符进行连接
3)根据提示将任意一串字符串中的大写转换成小写或小写转换成大写

刚学C!~明天就要交作业!~不交又挂科了!~求求哪个好心人帮忙做下这题.
知道很简单,但是我只会用函数弄!~不用就弄不来!~高手帮下忙嘛!~!

搜索更多相关主题的帖子: 字符 
2006-12-25 11:34
高达
Rank: 1
等 级:新手上路
威 望:1
帖 子:261
专家分:0
注 册:2006-10-27
收藏
得分:0 
从键盘输入三行字符串
按从大到小的顺序输出这三行字符串
应该是按字符串的长度从大到小的顺序输出吧?

哎 时间....................
2006-12-25 11:41
xingyu23
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2006-12-21
收藏
得分:0 

这有一部分!~!
#include<stdio.h>
int main(void)
{
int i=0,j=0;
char c[80],c1[80];
gets(c);
while(c[++j]!='\0');
gets(c1);
while(c1[++i]!='\0');

if(j+i<80)
{for(i=0;c1[i]!='\0';i++)
c[j++]=c1[i];
c[j]='\0';
printf("%s\n",c);
}
else
printf("error\n");
return 0;
}

2006-12-25 11:41
xingyu23
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2006-12-21
收藏
得分:0 
是的!~那帮下我吗?谢谢了!~
2006-12-25 12:11
高达
Rank: 1
等 级:新手上路
威 望:1
帖 子:261
专家分:0
注 册:2006-10-27
收藏
得分:0 
1)按从大到小的顺序输出这三行字符串

int mystrlen(char str[])/*统计字符串的长度*/
{
int i=0;
while(st1[i]!='\0')
i++;
return i;
}

[此贴子已经被作者于2006-12-25 12:41:19编辑过]


哎 时间....................
2006-12-25 12:25
高达
Rank: 1
等 级:新手上路
威 望:1
帖 子:261
专家分:0
注 册:2006-10-27
收藏
得分:0 

2)根据提示将这三行字符串中的任意两行字符

正好我朋友昨天 写了个给 我
void mystrcat(char *p,char *q) /*自定义连接字符*/

{
int i=0;
while(*(p++)!='\0')
i++;
while(*(q++)!='\0')
*(p++-1)=*q;
*p='\0';
}


哎 时间....................
2006-12-25 12:39
高达
Rank: 1
等 级:新手上路
威 望:1
帖 子:261
专家分:0
注 册:2006-10-27
收藏
得分:0 
3)根据提示将任意一串字符串中的大写转换成小写或小写转换成大写


void fun(char str[])
{
int i=0;
while(str[i]!='\0')
{
if(str[i]>='a' && str[i]<='z')
{
str[i]=str[i]+??; /*??为ACII码 A与a之间查多少就不知道了*/
}
else if(str[i]>='A' && str[i]<='Z')
{

str[i]=str[i]+??;
}

}

}
}





我写的是自定义函数
没调试过 你
自己拼抽着用吧...........

哎 时间....................
2006-12-25 12:52
海蓝啸
Rank: 5Rank: 5
来 自:安徽
等 级:贵宾
威 望:17
帖 子:1611
专家分:0
注 册:2006-4-3
收藏
得分:0 

我觉得那个字符串大小不是长度是问题。。。。字符串可以比较大小的。。。按ASCII码。。。。例如 "a">"ABDDD"

我来帮你写吧、圣诞大家开心、、、我只写处理函数。。。main你自己写吧。。。很简单的。。。调用下就可以了

第一题:字符串大小问题。。。

int compare(char *p,char *q) /*判断两个字符串大小,前面大返回1,后面大返回-1,相等返回0 */
{while(*p!='\0'&&*p!='\0')
{if(*(p++)>*(q++))
{return 1;
break;
}
else if(*(p-1)==*(q-1))
continue;
else
{return -1;
break;
}
}
if(*p=='\0'&&*q!='\0')
return -1;
else if(*p!='\0'&&*q=='\0')
return 1;
else return 0;
}
这个函数相当于strcmp的功能。。。

第二题:

void cat(char *p,char *q)

{int i=0;
while(*p++!='\0')
i++;
while(*q++!='\0')
*(p++-1)=*q;
*p='\0';
}

这个相当于strcat的功能,连接字符串

第三题:

void change(char flag,char *p)
{if(flag=='B') /*小写换成大写*/
while(*p!='\0')
{if(*p>='a'&&*p<='z')
*p=*p-32;
p++;
}
else if(flag=='S') /*大写换小写*/
while(*p!='\0')
{if(*p>='A'&&*p<='Z')
*p=*p+32;
p++;
}
else printf("ERROE\n"); /*参数传递错误*/
}


我写了这三个函数可以实现那几个功能函数的功能。。。。main()你自己写吧。。。

[此贴子已经被作者于2006-12-25 13:35:35编辑过]


这个社会太复杂。。。
2006-12-25 13:33
xingyu23
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2006-12-21
收藏
得分:0 
谢谢!~万分感谢!~
2006-12-25 16:54
快速回复:[求助]一个很简单的字符串问题
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.032045 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved