Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2341823
  • 博文数量: 816
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 5010
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-17 17:57
文章分类

全部博文(816)

文章存档

2011年(1)

2008年(815)

分类:

2008-12-17 18:04:14

#include
#include

void Sort(char *a);
void ReprePic(char *a);
void main()
{
char a[300];
cin>>a;
cout< Sort(a);
cout< ReprePic(a);
}
void Sort(char *a)
{

int i=1;
for(; *a!='\0'; a++)
{
if(*a>64&&*a<91)
*a=*a+'a'-'A';
int j=i;
char *temp=a;
for(; j>1; j--,temp--)
{
if(*temp<*(temp-1))
{
char index=*temp;
*temp=*(temp-1);
*(temp-1)=index;
}
else
break;
}
i++;
}
}

void ReprePic(char *a)
{
int len=strlen(a);
int line=0;

while(1)
{
if(line*(line+1)/2>=len)
break;
line++;
}
cout< int temp=line;
int index=0;


while(*a!='\0')
{
int j=1;
for(int i=1; i<2*line; i++)
{
if(i>=temp&&i<=line+index)
{
if(j)
{
if(*a=='\0')
break;
else
{
cout<<*a;
a++;
j=0;
}
}
else
{
cout<<"_";
j=1;
}
}
else
cout<<" ";
}
cout< temp--;
index++;
}
}




--------------------next---------------------
#include
#include

#define Character_Num 20          //最多输入字符的个数 可修改 程序中可任意输入N个字符
using namespace std;              //超过最多字符数 多余的将被舍弃
//=======================================类定义
class Character{

public:
Character();
void character_sq();          //排序
void character_bl();          //大写转小写            
void spacial_show();          //显示
    int get_lenth();
void show();
protected:
char ch[Character_Num+1]; //数组 长度为字符串长度+1 +1存放'/0'
};

//=====================================类定义结束

//=====================================类成员函数

Character::Character()               //构造函数
{
cout<<"输入一串字母:"<    cin.getline(ch,Character_Num+1,'\n');  
}

int Character::get_lenth()            //获得输入字符串的长度
{  
char *p=ch;
int lenth=0;
    while(*p!='\0')
{
++lenth;
p++;
}
return lenth;
}

void Character::spacial_show()     //三角形状输出字符串
{
char *ptr=ch;
      int len=get_lenth();
      int line=0;

      while(1)
  {
          if(line*(line+1)/2>=len)
          break;
          line++;
  }
      cout<      int temp=line;
      int index=0;


      while(*ptr!='\0')
  {
           int j=1;
           for(int i=1; i<2*line; i++)
   {
              if(i>=temp&&i<=line+index)
  {
                  if(j)
  {
                     if(*ptr=='\0')
                      break;
                      else
  {
                         cout<<*ptr;
                         ptr++;
                           j=0;
  }
  }
                else
{
                    cout<<"_";
                    j=1;
}
  }
                else
               cout<<" ";
   }
    cout<     temp--;
     index++;
  }
}

void Character::show()
{
cout<}

void Character::character_sq()    //输入字符串排序
{
   char temp;
//================================== 排序部分
   for(int i=0;i for(int j=i;j {
if(ch[i]>ch[j])
{
temp=ch[i];
ch[i]=ch[j];
ch[j]=temp;
}
}
}

void Character::character_bl()      //输入字符串大写全换成小写
{

//==================================  //大写转化成小写
for(int k=0;k {
if(ch[k]>='A'&&ch[k]<='Z')  
{
ch[k]=ch[k]+32;
}
}

}

//====================================主函数
void main()
{
Character a;
cout< a.character_bl();      //此处调用顺序不可乱,必须先调用大写转小写,然后在调用排序
a.character_sq();
a.show();

cout<<"处理后的输出是:"<    a.spacial_show();

}

--------------------next---------------------

阅读(995) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~