- 在线时间
- 5024 小时
- 最后登录
- 2022-11-28
- 注册时间
- 2009-4-8
- 听众数
- 738
- 收听数
- 1
- 能力
- 23 分
- 体力
- 77548 点
- 威望
- 96 点
- 阅读权限
- 255
- 积分
- 27191
- 相册
- 1
- 日志
- 14
- 记录
- 36
- 帖子
- 4293
- 主题
- 1341
- 精华
- 15
- 分享
- 16
- 好友
- 1975

数学中国总编辑
TA的每日心情 | 衰 2016-11-18 10:46 |
|---|
签到天数: 206 天 [LV.7]常住居民III 超级版主
 群组: 2011年第一期数学建模 群组: 第一期sas基础实训课堂 群组: 第二届数模基础实训 群组: 2012第二期MCM/ICM优秀 群组: MCM优秀论文解析专题 |
#include
2 j0 e- Q# Y [4 k' X+ T. l#include
( I n+ B* M' E3 l T% e. Z# [#define N 11
. S- |; b1 P: m" N- p0 k x/*用**哨查找*/
4 h! W3 ~- Q& J4 u& w( Fint search(int array[],int n,int k)
; v- E2 J/ v$ _% i- z' w! B{int i;/ ?7 K" {, `& S. s7 f' Y6 {7 E
i=n-1;( M2 K: u B+ Q( w
array[0]=k;. N2 M0 X0 `* s+ A" R% X
while(array[i]!=k) i--;; e- r! q8 h* E
return(i);
8 X& @3 \3 I! v) {}
5 j& o9 ~; v3 m0 V/*折半查找法*/
& b; q7 y) R L, I$ v' Tint halfsearch(int array[],int n,int k)0 J& O3 H% `9 j- y9 ^% ~5 x9 }. t& ^- ^
{int i,j,mid;6 Q q/ d# p W' ~+ m3 ]8 D( u
i=1;j=n;# `2 ] _6 z, t6 {
while(i<=j); r/ n" m. r( Y* \( u, H
{mid=(i+j)/2;1 O9 u; x- k5 k* [3 X% U" Y* z0 G
if(k==array[mid]) return(mid);& M0 e7 e7 ?1 @& w5 ~
else if(k
* e! a6 w6 J7 q1 O3 S* g4 u3 Q: |else i=mid+1;4 h4 o" Z4 ^5 \- \+ J
}$ I( @0 e" _/ h% l
return(0);! O" m2 ]/ k$ t# U& c
}' x8 L9 M9 N3 l! [ f
/*冒泡排序法*/( q9 I" Z1 a1 z
void mpsort(int array[])
0 l% y# k+ X/ v% \+ I4 y4 s) d$ n{int i,j,a;
- `( g9 L+ {/ Y( _" `( Ba=0;4 h7 M; H5 @6 S) ~
for(i=1;i 9 H# M4 M% F6 j) Y; @ o5 q
for(j=i+1;j
+ x# D3 R/ x5 |" E- r- p5 {' Xif(array[i]>array[j])/ O. c }( k) A D; u3 R2 V1 q
{a=array[i];
* ]3 {; k: C1 U, A3 @array[i]=array[j];
4 e1 i0 c7 X8 l X Yarray[j]=a;}
+ a/ I9 t I) H' C}: Q$ z1 t! o d' k" P
/*直接插入排序*/1 b, T% r1 d0 t# i# s
void insertsort(int array[])
5 N5 u) F9 P6 ~5 H/ b/ G& W{int i,j;. G, w0 G0 r* c1 F
for(i=2;i
* H" |8 z$ Z( `3 [, X{array[0]=array[i];
! U+ P! _; S* |9 S, A K5 uj=i-1;; I& F0 s& b/ q- J
while(array[0]
" N5 ?* \5 k/ H" i; `0 P% H0 r{array[j+1]=array[j--];/ t F( s4 ]9 J$ c1 O# k3 X
array[j+1]=array[0];
9 r( s8 I$ a: X- g}9 X. l) r8 H/ z# |; P) H6 V4 D
}/ k& j. o& H4 [" u; I
}
& |( u5 x2 B0 U) O* d/*建立*/9 l' \0 L6 h& A, A2 |$ b9 v6 u
void creat(int array[])
2 b/ q. }! r! e% }2 _5 e% V{int i;! i; z7 _/ N' d8 Z0 p2 R
printf("enter the array:\n");2 I3 H7 ~, s6 @" D
for(i=1;i 6 r m! B0 R6 d. l6 ]! ?# {
scanf("%d",&array[i]);
3 \$ J$ L/ o& u" G}" y9 ` D, I& ~
/*显示*/
# P4 |- B; y' k6 c9 L" _void print(int array[])
# J B4 x# b" t{int i;
" K+ `. z! t2 w2 ~printf("The numbers after sort is:\n");) S" V% V1 ^* I
for(i=1;i
" W, ?' J( o; J$ p* dprintf("%d ",array[i]);! ~5 ]# |' ?- N W
printf("\n");: Z( P! U" r$ S; [- @; j
}
9 F4 N# p0 w. e- t' v' [ Xmain()
N$ `- g* M" ?5 O{int a[11],i,x,chang;5 K" l7 Z4 o5 B3 v
/*printf("enter the array\n");; R( |$ C$ ?' E* V. q" o
for(i=1;i<11;i++); @. f5 h& u% [# S7 }! @0 T9 U
scanf("%d",&a[i]);*/
) S, }/ F; x- t Oaga:
7 c; s- z9 ~% r# Pprintf("\nchang:1: use watching method finding\n 2:use half method finding\n 3: use directness intsert method sort\n 4:use bubble up method sort\n 5:exit\n");
5 _1 t; z& h; l( U9 d8 }+ Kscanf("%d",&chang);, J3 W* P: n5 u
switch (chang)
+ f* o( d+ N' h4 }1 |6 {2 ^" b W{case 1:. |4 s& Q/ C. b; r" n5 } u9 A# u' E
{creat(a);
( G+ G! f( H* }! m/ q# o9 Zprintf("Please int the search number:\n"); X5 C- p+ U$ @( M1 j
scanf("%d",&x); Z& o0 }) D5 `+ W9 x- A4 u
printf("The number station is:%d\n",search(a,N,x));* G( l2 R4 G: V5 Z8 K
goto aga;( J& D) F) |( I
}
8 k; [ n5 C: H" jcase 2:$ ?* V: a6 t2 W( d5 i _
{ creat(a);
1 I3 Y# N. U7 @5 |8 ]+ x5 Kinsertsort(a);
9 ~5 h+ ]" t) b$ q- Y9 X# j5 Iprint(a);: }* f Z+ {. H. `+ B( o9 ^1 L
printf("Please int the search number:\n");" G" h# p+ v, ?! K! m7 K1 X; }# T
scanf("%d",&x);' K: h% _2 o% F3 f
printf("The number station is:%d\n",halfsearch(a,N,x));- ^5 u: c h2 W; a+ ]6 F! e9 c
goto aga;5 o" C* m! D4 I1 W* B; U) B
}( C4 K k/ O1 z
case 3:
9 T# [/ c# W7 f6 K5 d) Y5 F{creat(a);9 E" h7 A! ?+ |5 v }' e
insertsort(a);* a5 d0 s# c; l+ W
print(a);
# _) W2 ~3 X( ]+ S# y: K Z6 ~goto aga;
! ?, f# k" y% ~- q/ F, P6 J}
& |, o+ s/ g* a @' L8 Jcase 4:
( b D0 |! p- T: i8 _{creat(a);+ s J/ ]/ a) w; H
mpsort(a);4 F5 ]! ^, i. a9 @7 I$ `. Z/ l* I
print(a);3 J) s4 I, F" B% l( N
goto aga;
9 x. U4 W/ {7 k}
8 P1 T6 }" q. P3 G- ycase 5:{ printf("exit!\n");break;}
o+ z X' \: ^, h0 g3 rdefault:{printf("Error!\n"); goto aga;}9 A2 h1 Z, v0 A9 X
}
' S" X2 M8 j6 l. F2 u9 M# P' n% @# J}
: b+ B) b$ c2 o! L+ R$ K9 q" u7 ] h* s/ s
|
zan
|