C輸入字串,按由小到大的順序輸出錯誤請教

2021-09-08 19:06:27 字數 5192 閱讀 7132

1樓:匿名使用者

#include

#include

using namespace std;

int main()

if(string1 <= string2)cout << string1 << " " << string2 << " " << string3 << endl;

else if(string1 <= string3)cout << string2 << " " << string1 << " " << string3 << endl;

return 0;}

2樓:匿名使用者

修改如下:

#include

#include

int main()

//已知string3>string2

//string2>string1,順序可以確定

if(string1 <= string2)

cout << string1 << " " << string2 << " " << string3 << endl;

else if(string1 <= string3)

cout << string2 << " " << string1 << " " << string3 << endl;

//除了string1>string2 && string<=string3,還有string1>string3

else

cout << string2 << " " << string3 << " " << string1 << endl;

return 0;}

3樓:匿名使用者

最後再加個else if:

else if(string1 > string3)

cout << string2 << " " << string3 << " " << string1 << endl;

4樓:匿名使用者

錯在輸出分支不滿足完備性上面了。

這段三個字串比較排序**使用了插入排序的演算法邏輯,即:選擇一個(剩餘)元素string1,往有序列表(string2 < string3)中執行插入操作,插入位置無非有(1)string2之前;(2)string2與string3之間;(3)string2之後;最終構成三個字串的有序序列。

有n個元素的插入排序過程,元素最少比較(次數)分支有n*(n+1)/2-2個。

至於修改本段**,用:

else if(string1 > string3)

cout << string2 << " " << string3 << " " << string1 << endl;

else

cout << 「unknow exception or error.」 <

還是else

cout << string2 << " " << string3 << " " << string1 << endl;

我認為和程式目標和軟體**質量要求有關,我們不做空洞的比較和爭辯。

5樓:丶

在main之前加 using namespace std;

c++程式設計,要求:輸入3個字串,按由小到大的順序輸出。

6樓:操羽

樓上回答的不對,這個程式傳遞的並不是指標,他傳遞的字串引用

#include

#include

using namespace std;

函式宣告

int main()

{string str1="           ",str2="            ",str3="           ";

cout<<"enter:"

if(str1>str3) swap(str1,str3);//////////////

if(str2>str3) swap(str2,str3);//////////////

cout<

輸入三個字串,按照從小到大的順序輸出(c++)

7樓:夜幕下的魅影

void main()

if(p!=i)

puts(cs[i]);

} printf("\n");

getch();

} 這是最基本的方法,當用字串比較函式strcpy時,需要去交換3個字串,你也可以用指標做,去交換地址,效率會比這個高。

8樓:匿名使用者

函式名: strncmp

功 能: 串比較

用 法: int strncmp(char *str1, char *str2, int maxlen);

說明:比較字串str1和str2的大小,如果str1小於str2,n就<0,反之如果str1大於str2,n就》0,如果str1等於str2,n就=0

9樓:匿名使用者

用了stl中的vector、sort()函式、iterator#include

#include

#include

#include

#include

using namespace std;

int main()

sort(str.begin(),str.end());

copy(str.begin(),str.end(),ostreamitr(cout," "));

cout<

system("pause");

return 0;}

10樓:匿名使用者

閒著沒事~~~做著玩

#include

#include

using namespace std;

int main(int argc, char* ar**)if (strcmp(str2.c_str(), str3.c_str()) > 0)

else

}cout<

return 0;}

11樓:鬧鐘

用strcmp,自己網上找找用法吧

c++語言程式設計:輸入三個整數,要求按照由小到大的順序輸出

12樓:潮範君

#include //標頭檔案

using namespace std;

void swap(int *p1,int *p2);  //用於交換2個變數的功能函式

int main()

{int n1,n2,n3;

int *p1,*p2,*p3;

cout<<"請依次輸入3個整數:";

cin>>n1>>n2>>n3;

p1=&n1;

p2=&n2;

p3=&n3;

if(n1>n2)

swap(p1,p2);

if(n1>n3)

swap(p1,p3);

if(n2>n3)

swap(p2,p3);

cout<<"排序後結果為:"<

13樓:匿名使用者

#include

using namespace std;

int main()

//使a,b交叉換位

if (a > c)

//使a,c交叉換位

if (b > c)

//使b,c交叉換位

cout << a << "," << b << "," << c << endl;

return 0;}

14樓:匿名使用者

#include

using namespace std;

void main()

//保證a大於c,至此a存放的是三個數中最大的if ( b

cout<

c++ 輸入3個字串,按由小到大的順序輸出?

15樓:海__魂

#include

int main()

if(b>c)

if(a>b)

printf("%c%c%c\n",a,b,c);

getchar();

}return 0;}

在c++程式中輸入n個字串,以a打頭的字串輸出嗎?

16樓:大大的

**如下:

#include

#include

using namespace std;

int main()

string str[100];

int i;

cout<<"please input code"

cin>>str[i];//給str賦值

for(i=0;i<4;i++)

if(str[i][0]=='a')//一維字串陣列,可以這樣呼叫其中的字元

cout<<"結果:"

補充說明:

c++是c語言的繼承,它既可以進行c語言的過程化程式設計,又可以進行以抽象資料型別為特點的基於物件的程式設計,還可以進行以繼承和多型為特點的物件導向的程式設計。c++擅長物件導向程式設計的同時,還可以進行基於過程的程式設計,因而c++就適應的問題規模而論,大小由之。

c++不僅擁有計算機高效執行的實用性特徵,同時還致力於提高大規模程式的程式設計質量與程式設計語言的問題描述能力。

17樓:

#include

#include

using namespace std;

int main()

ps:我的**是n為4的時候,希望對你有幫助,我自己執行過,可以輸出正確的字串

輸入字串,按英文字典排序由小到大順序輸出的C語言程式

include include include define n 15 每個字 自符串最多15個字元 void main 排序 int j,k for j 0 j 5 j for k j 1 k 5 k for i 1 i 5 i 輸出puts str i c 程式設計 輸入5個字串,按英文字典排序...

輸入字串,按從小到大的順序輸出用指標處理

1 新建一個工程和.c檔案 輸入標頭檔案和主函式。2 宣告函式,初始化版陣列,定義變數型別。權3 呼叫函式。char str sample int len strlen str 1 har copystr 256 memcpy copystr,str,len 4 定義呼叫函式。5 輸入呼叫函式體。d...

輸入數,用氣泡排序法按由小到大順序排序並輸出??c語言

include define n 12 void exchange int x,int y int main 輸入10個數,用氣泡排序法按由小到大順序排序並輸出?include define n 5 表示巨集定義 n的值為 5 main for j 0 j include definen10 voi...