用指向指针方法对N个字符串进行排序并输出
C語言版本的:
#include "stdio.h" #include "stdlib.h" #include "string.h"void sort(char *str[],int size) {int i,j;char *temp;for(i=0;i<size-1;i++){for(j=i+1;j<size;j++){if(strcmp(str[i],str[j])>0) //字符串之間的比較{temp=str[i];str[i]=str[j];str[j]=temp;}}} }int main(void) {char *p[200],str[200][20];int i,n;printf("請輸入字符串的個數: ");scanf("%d",&n);for(i=0;i<n;i++){scanf("%s",str[i]);p[i]=str[i];}sort(p,n);printf("排序后的結果為:/n");for(i=0;i<n;i++)printf("%s/n",p[i]);system("pause");return 0; }
C++語言版本的:
#include "iostream" #include "string" #include "algorithm" using namespace std;bool cmp(string &a, string &b) {return a<b; } int main(void) {int n,i;string *str;cout<<"請輸入字符串的個數:";cin>>n;str = new string[n];for(i = 0; i < n; i++)cin>>str[i];sort(str, str+n, cmp);cout << "排序后的結果為:" <<endl;for(i = 0; i < n; i++)cout<<str[i]<< endl;system("pause");return 0; }
運行結果如下圖:
總結
以上是生活随笔為你收集整理的用指向指针方法对N个字符串进行排序并输出的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 快速排序、希尔排序、插入排序、选择排序、
- 下一篇: Qt中moc问题(qt moc 处理 c