C++编程题:输入十个国家名称用指针数组实现排序输出
原来的程序是这样的,但不满足条件
#include<iostream.h>
#include<string.h>
void ccmp(char *a[]);
void main()
{
char *cname[10]={"China","USA","Australia","Austria","Brazil","Japan","England","Canada","Italy","France"};
ccmp(cname);
for(int i=0;i<10;i++)
cout<<cname[i]<<endl;
}
void ccmp(char *a[10])
{
char *p;int i,j;
for(i=0;i<9;i++)
for(j=0;j<10;j++)
{
if(strcmp(a[i],a[j])>0)
{
p=a[i];
a[i]=a[j];
a[j]=p;
}
}
}
#include <iostream.h>
#include <灶轮string.h>
void ccmp(char * a[]);
void main()
{
char * cname[10]={"China","毁辩圆USA","Australia","Austria","Brazil","Japan","England","Canada","Italy"纤塌,"France"};
ccmp(cname);
for(int i=0;i<10;i++)
cout<<cname[i]<<endl;
}
void ccmp(char * a[10])
{
char * p;int i,j;
for(i=0;i<9;i++)
{
for(j=i;j<10;j++)
{
if(strcmp(a[i],a[j])>0)
{
p=a[i];
a[i]=a[j];
a[j]=p;
}
}
}
}
#include<iostream.h>
#include<string.h>
void ccmp(char *a[]);
int main()
{
char *cname[10]={"China","USA","Australia","Austria","Brazil","Japan","England","Canada","Italy","France"};
ccmp(cname);
for(int i=0;i<10;i++)
cout<<cname[i]<<endl;
return 0;
}
void ccmp(char *a[ ]) //10不用局拦进来。
{
char *p;int i,j;
for(i=0;i<9;i++)
for(j=i;j<10;j++) { //j得从i开始。
if(strcmp(a[i],a[j])>0){
p=a[i];
a[i]=a[j];
a[j]=p;
}
}
}
只是用你的做缺巧以桐扮胡修改而已,修改之处见注释。
相关内容
- VC++中 如何调用已经关闭的对话框的成员变量?1个答案-提问时间:2013-09-15转VC对话框的关闭按
- linux环境 C语言 getline()函数问题[图文]在c语言环境下实现C++中的getline函数即在c
- 了解爱迪尔在三角形ABC中,abc分别是内角ABC的对边,且2asinA=(2b+c)sinB+(2c+b)sinC第1个回答:mmnnmn13572010-07-06TA获得
- 突然钓鱼岛C++建一队列(链式存储结构)实现队列中元素的出队列,新元素入队列及取队头元素第1个回答:风暴头脑2016-03-15TA获得超过260个
- 怎么讲深海里的星星C++如何修改已经输出到屏幕的文字(cout)第1个回答:tattackor2017-09-27TA获得超
- 有了解bilibili求增三和弦C+,D+,E+,F+,G+,A+,B+和减三和弦C-,D-,E-,F-,G-,A-,B-,和弦的组成音跟和弦按法。第1个回答:d绝缘2011-03-17关注增和弦:CE#GD
- 该怎么一线若a.b.c.d均是非零实数,且c.d是方程x^2+ax+b=0的两根,a.b是方程x^2+cx+d=0的两根,则a+b+c+d=?第1个回答:百度网友c359f642009-03-24TA获
- 急哪里能下载到潘嘉杰《易学C++》电子书?在学习C++之前自己下载了不少书籍,自己没有什么定力,总喜欢