#include
void swap(int *a,int *b)
void print(int *a,int n)
printf("\n");
}void maopao(int *a,int n)}}
void choose(int *a,int n)
//swap(a+i,a+min);}}
void fast(int *a,int n)
fast(a,l);
fast(a+l+1,n-l-1);
}void insert(int *a,int n)
a[j]=t;}}
int main()
;print(a,7);
//maopao(a,7);
//choose(a,7);
//insert(a,7);
fast(a,7);
int x=8;
int y=10;
printf("x=%d y=%d\n",x,y);
swap(&x,&y);
printf("x=%d y=%d\n",x,y);
print(a,7);
return 0;
執行結果
3 1 5 2 7 6 5
x=8 y=10
x=10 y=8
1 2 3 5 5 6 7
符合預期。
但是swap()函式中使用下面兩種方式做交換處理的時候
/**a=*a+*b;
*b=*a-*b;
*a=*a-*b;
*a=*a^*b;
*b=*a^*b;
*a=*a^*b;*/
排序結果卻有問題但是交換x,y的值正確。編譯環境gcc 。系統ubuntu 15.4 64位。特此記錄。
關於串列埠操作的問題記錄
1 我們操作串列埠時,發現資料返回不對,或者沒有資料返回,首先需要看一下波特率是不是設定正確 2 delphi下用tmscom的串列埠操作 1 傳送資料 function senddata data array of byte len integer boolean var temp variant...
關於Excel匯入的問題記錄
前提為oledb excel。根據需求,多數是對於表的資料的匯入。於是產生這麼乙個需求過程 1。準備乙個空的標準excel。2。根據表名查詢字段 3。動態生成字段表頭 4。copy空的標準excel,迴圈表頭生成新的標準excel以二進位製流匯出。5。使用者再根據表頭的提示新增資料再上傳提交。1步和...
關於Excel匯入的問題記錄
前提為oledb excel。根據需求,多數是對於表的資料的匯入。於是產生這麼乙個需求過程 1。準備乙個空的標準excel。2。根據表名查詢字段 3。動態生成字段表頭 4。copy空的標準excel,迴圈表頭生成新的標準excel以二進位製流匯出。5。使用者再根據表頭的提示新增資料再上傳提交。1步和...