按字母顺序排序输出
2016-04-16 10:54
274 查看
#include<stdio.h>
#include<iostream>
using namespace std;
void strcpy1(char*p1, char*p2)
{
char temp;
temp =* p1;
*p1 = *p2;
*p2 = temp;
}
int main()
{
char st[20], cs[5][20];
int i, j, p;
cout << "input country name:" << endl;
for (i = 0; i < 5; i++)
gets_s(cs[i]);
cout << "输入完成"<<endl;
for (i = 0; i < 5; i++)
{
p = i;
strcpy_s(st, cs[i]);
for (j = i + 1; j < 5; j++)
{
if (strcmp(cs[j], st) < 0)
{
p = j;
strcpy_s(st, cs[j]);
}
}
if (p != i)
{
//strcpy_s(st, cs[i]); 这个地方是重点,c++自带的strcpy函数只能实现复制功能,却不能实现指针的交换,要想让指针交换,必须
strcpy1(cs[i], cs[p]); // 自己定义函数,紧紧实现复制在此处并不能完成要求,因为没有指针的交互,在下一次循环的时候,这个时候已经
// strcmp(cs[p], st); 输出的字符串在原来的数组中还存在,还会继续比较,所以,要把输出的字符串放到最前面,i+1后就不会再比较了。无法得到正确的结 // 果。
//puts(cs[i]);
}
puts(cs[i]);
}
cout << "dd" << endl;
for (i = 0; i < 5; i++)
cout << cs[i] << endl;
cout << endl;
return 0;
}
#include<iostream>
using namespace std;
void strcpy1(char*p1, char*p2)
{
char temp;
temp =* p1;
*p1 = *p2;
*p2 = temp;
}
int main()
{
char st[20], cs[5][20];
int i, j, p;
cout << "input country name:" << endl;
for (i = 0; i < 5; i++)
gets_s(cs[i]);
cout << "输入完成"<<endl;
for (i = 0; i < 5; i++)
{
p = i;
strcpy_s(st, cs[i]);
for (j = i + 1; j < 5; j++)
{
if (strcmp(cs[j], st) < 0)
{
p = j;
strcpy_s(st, cs[j]);
}
}
if (p != i)
{
//strcpy_s(st, cs[i]); 这个地方是重点,c++自带的strcpy函数只能实现复制功能,却不能实现指针的交换,要想让指针交换,必须
strcpy1(cs[i], cs[p]); // 自己定义函数,紧紧实现复制在此处并不能完成要求,因为没有指针的交互,在下一次循环的时候,这个时候已经
// strcmp(cs[p], st); 输出的字符串在原来的数组中还存在,还会继续比较,所以,要把输出的字符串放到最前面,i+1后就不会再比较了。无法得到正确的结 // 果。
//puts(cs[i]);
}
puts(cs[i]);
}
cout << "dd" << endl;
for (i = 0; i < 5; i++)
cout << cs[i] << endl;
cout << endl;
return 0;
}
相关文章推荐
- mysql group by的特殊性
- hdu-4989 Summary(水题)
- 替换空格算法分析
- Graphite系统监控
- FZU 2150 Fire Game(BFS)
- FZU 2150 Fire Game(BFS)
- 字符编码笔记:ASCII,Unicode和UTF
- Hdu 1437 天气情况【概率dp】
- c++ 开发常用开源库
- Caffe 学习笔记之CIFFA-10
- 你有没有想到,这样的观点挖掘引擎?
- 能不能在构造函数和析构函数中调用虚函数?
- 从一次谷歌面试趣事中想到问题的更好的解决办法
- 《Linux内核设计与实现》第四章读书笔记
- ssh配置文件说明
- MIRO校验过程
- 『 Spark 』1. spark 简介
- 工厂模式
- 使用Zabbix中遇到的问题:snmp监控端口流量偶尔会断图
- 数组读书笔记