亚洲欧美日韩国产一区二区精品_亚洲国产精品一区二区动图_级婬片A片手机免费播放_亚洲国产成人Av毛片大全,男女爱爱好爽好疼视频免费,中文日韩AV在线,无码视频免费,欧美在线观看成人高清视频,在线播放免费人成毛片,成 人 网 站 在 线 视 频A片 ,亚洲AV成人精品一区二区三区

機(jī)械社區(qū)

 找回密碼
 注冊會員

QQ登錄

只需一步,,快速開始

搜索
查看: 4461|回復(fù): 11
打印 上一主題 下一主題

C語言經(jīng)典算法100例

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
1#
發(fā)表于 2017-9-22 09:34:26 | 只看該作者 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
【程序1
5 u5 z5 m: u+ b( x2 y% A; z題目:有12,、34個(gè)數(shù)字,,能組成多少個(gè)互不相同且無重復(fù)數(shù)字的三位數(shù),?都是多少?   F  X) A6 ]! [0 g4 ?9 o" E0 ~
1.程序分析:可填在百位,、十位,、個(gè)位的數(shù)字都是12,、3,、4。組成所有的排列后再去 * Q) b2 j1 F# L' K
掉不滿足條件的排列,。 1 g7 E+ }7 J9 v! z2 \1 I9 [
2.程序源代碼:
/ _( e2 a. [! |/ A2 _, Vmain() {
! y4 ?4 j/ V1 t7 [& O8 e" [int i,j,k;
- S$ r3 o0 ?5 _+ _, lprintf("\n");
. N# B! }, r/ j6 d9 A" ~6 gfor(i=1;i<5;i++) *以下為三重循環(huán)*/
7 ~. G5 Z( ^1 c$ H  Gfor(j=1;j<5;j++)
1 X& v& x$ ~7 y! Q) l7 bfor (k=1;k<5;k++) { 0 K6 L. D/ ~/ h: `4 g0 ~" g* g
if (i!=k&&i!=j&&j!=k) /*確保i,、jk三位互不相同*/
1 m9 s5 T+ J( ~% H3 Rprintf("%d,%d,%d\n",i,j,k); }}
/ [2 n: C, z5 j4 S==============================================================
- R( B$ S0 G6 R3 U8 j& Q【程序2
) C6 }7 m  y, d/ Z題目:企業(yè)發(fā)放的獎金根據(jù)利潤提成,。利潤(I)低于或等于10萬元時(shí),,獎金可提10%;利潤高
" _: s0 b- i, y4 U" G/ Z+ ^3 d10萬元,,低于20萬元時(shí),,低于10萬元的部分按10%提成,高于10萬元的部分,,可可提
0 Y9 p) A9 L  \+ ^( s6 _7.5%,;20萬到40萬之間時(shí),高于20萬元的部分,,可提成5%,;40萬到60萬之間時(shí)高于 7 x9 ]  v9 m) e& O
40萬元的部分,可提成3%,;60萬到100萬之間時(shí),,高于60萬元的部分,可提成1.5%,,高于 5 z' l& T, e" t" R
100萬元時(shí),,超過100萬元的部分按1%提成,從鍵盤輸入當(dāng)月利潤I,求應(yīng)發(fā)放獎金總數(shù),? & l8 s0 t4 ^: v" `" m4 v$ x
1.程序分析:請利用數(shù)軸來分界,,定位。注意定義時(shí)需把獎金定義成長整型,。 3 f' D; R% E' a  @$ p
2.程序源代碼: 7 U7 K+ f& F4 ?' E, z
main() {
0 r( ]. q" ^, d1 Z9 j5 nlong int i;
; O6 Q# t& h2 _; i  Zint bonus1,bonus2,bonus4,bonus6,bonus10,bonus;
( f% g% C! z! {1 s6 A  [3 X+ escanf("%ld",&i); 7 g& l7 |# g' X% t7 |& |4 a
bonus1=100000*0.1;bonus2=bonus1+100000*0.75;
/ I% ^# ~8 S; V9 B! ?bonus4=bonus2+200000*0.5;
! n- {+ b0 m2 f# V) C; Obonus6=bonus4+200000*0.3;
$ Y2 m' q$ R& S! l- Jbonus10=bonus6+400000*0.15;
. B: M. t8 n" Aif(i<=100000) " r' Q  U; l: ~2 h9 j" f- f
bonus=i*0.1;
: W+ P5 ]6 |3 ?- y/ d% j/ g& {0 gelse if(i<=200000)
2 D7 F, g" p# W4 t5 f' J5 sbonus=bonus1+(i-100000)*0.075;
4 C" p& i8 h- h/ Oelse if(i<=400000) - U$ A( y8 Q  ]) @
bonus=bonus2+(i-200000)*0.05;
+ w! ~+ `5 K8 F( O8 D6 ]6 }else if(i<=600000) # Q* \6 e  c6 O2 r
bonus=bonus4+(i-400000)*0.03;
/ A4 h4 O1 ]3 j" F+ n4 I% Pelse if(i<=1000000) 9 n+ v# ?0 R8 J, H
bonus=bonus6+(i-600000)*0.015; $ `; k) W/ Z1 x3 Z
else 4 @# ?- X0 S/ X6 Q# G0 \
bonus=bonus10+(i-1000000)*0.01;
( h  t& n, F) i4 Jprintf("bonus=%d",bonus); } ) B1 k7 Y' C: n
============================================================== ( B* G! [  [* ]7 e2 s3 {
【程序3' `. r: A& l& P2 j4 o2 {3 U) I0 ?
題目:一個(gè)整數(shù),,它加上100后是一個(gè)完全平方數(shù),再加上168又是一個(gè)完全平方數(shù),,請問該數(shù)是多少,?
# o% H! D  F. S: O- P6 j1.程序分析:在10萬以內(nèi)判斷,先將該數(shù)加上100后再開方,,再將該數(shù)加上268后再開方,,如果開方后 - u7 z0 t: K0 W6 m* d
的結(jié)果滿足如下條件,即是結(jié)果,。請看具體分析:
/ Q9 n- p- P) S, Y5 M2.程序源代碼: " e) N/ f# k' ~; C
#include "math.h"
  J; U- _' [9 ^5 X1 S6 ^& T! [9 wmain() {
9 B0 x' {5 e7 d, `! Plong int i,x,y,z;
% g$ `" Y8 U, D" e. ]) y. T; ^for (i=1;i<100000;i++) . _; C/ |# h& ^! S' K% _  E% h
{ x=sqrt(i+100); /*x為加上100后開方后的結(jié)果*/
/ M$ h. B# [1 S& L/ f; O- ly=sqrt(i+268); /*y為再加上168后開方后的結(jié)果*/
) @7 Y9 g# E! n  @# yif(x*x==i+100&&y*y==i+268)/*如果一個(gè)數(shù)的平方根的平方等于該數(shù),,這說明此數(shù)是完全平方數(shù)*/ 2 G3 K( y9 c" c+ |+ w: r) C9 n
printf("\n%ld\n",i); } }
7 M( \7 i. X( ?, ^4 v  g( L============================================================== ' d+ i( B; s: i& G) V: V- o' w
【程序4
( Q6 p0 t$ Q7 S6 B+ ~) X題目:輸入某年某月某日,判斷這一天是這一年的第幾天,? / w" L2 q# C8 N0 U  r5 m0 P
1.程序分析:以35日為例,,應(yīng)該先把前兩個(gè)月的加起來,然后再加上5天即本年的第幾天,,特殊
( v/ W& r4 n- {. V8 C! ]情況,,閏年且輸入月份大于3時(shí)需考慮多加一天。
. f" j4 M. P7 e& J2.程序源代碼:
4 J. l+ @; u& U( v7 x3 amain() {
, Z8 c5 R+ d) y" P5 gint day,month,year,sum,leap;
6 ?# ~5 u+ K$ d* t: \printf("\nplease input year,month,day\n"); 1 ^- m7 j7 a, L9 l( K7 H
scanf("%d,%d,%d",&year,&month,&day);
  e) c5 n; g4 t. ^0 s( gswitch(month)/*先計(jì)算某月以前月份的總天數(shù)*/
{ case 1:sum=0;break; $ a! u  c! b6 K! x; k& C
case 2:sum=31;break; : G% {3 j( {5 \  K! {
case 3:sum=59;break;
, o) A7 ~6 Z+ x9 I6 _5 L# dcase 4:sum=90;break;
  I* W6 \- m1 q1 {# B* ?case 5:sum=120;break; 8 j. U8 C. e2 v  s# ~1 i7 ?; M
case 6:sum=151;break;
: H8 b3 l& Y, {/ h( E3 p3 u5 `case 7:sum=181;break;
: D: I. q- I7 N3 O$ k, Lcase 8:sum=212;break; 3 ~) Y8 Q" Q9 L' [( S: ~! B
case 9:sum=243;break; 6 H/ W* z& {8 B# H
case 10:sum=273;break; # A: X0 k5 @9 j. t
case 11:sum=304;break; : o: |2 L, B# P, ]' K
case 12:sum=334;break; " u, S8 K; _/ z* n- k3 P2 k2 P% p
default:printf("data error");break; } 3 d6 q  D! H, A- l/ W" w2 x. d  S) M
sum=sum+day; /*再加上某天的天數(shù)*/ 2 v& V% m# a0 U
if(year%400==0||(year%4==0&&year%100!=0))/*判斷是不是閏年*/ ( `/ q" L& I8 j$ j
leap=1;
, e' A' s8 J2 F# O. o( ^( ?5 velse % U( D! k! J+ ]
leap=0;
. E; E3 x# N( i  O6 Rif(leap==1&&month>2)/*如果是閏年且月份大于2,總天數(shù)應(yīng)該加一天*/
5 K) [6 c* ^) isum++;
1 I& |, n2 V3 M4 n3 v1 Z# Dprintf("It is the %dth day.",sum);}
8 c4 z2 U# T% d$ ]/ h==============================================================
+ V& k0 l' }# y! \6 T. r【程序5
" |6 |' `, f( F; d5 Y. E5 x題目:輸入三個(gè)整數(shù)x,y,z,,請把這三個(gè)數(shù)由小到大輸出,。 8 O+ I+ T7 h0 i6 D& w, T- e. Z
1.程序分析:我們想辦法把最小的數(shù)放到x上,先將xy進(jìn)行比較,,如果x>y則將xy的值進(jìn)行交換,, 3 h1 Q/ n  Y1 P" X" ]3 b( W0 ]! s
然后再用xz進(jìn)行比較,如果x>z則將xz的值進(jìn)行交換,,這樣能使x最小,。 9 x2 Y: s7 r' P7 s  q" c; y; a
2.程序源代碼: ) W! C/ n% J2 \8 n$ i; S$ M0 K/ r
main() {
- a1 X' N+ V9 j# X( Uint x,y,z,t;
6 L6 @: _3 E0 qscanf("%d%d%d",&x,&y,&z); - r4 n  m% C. M9 z! V) L
if (x>y)
- Y. V; E7 L: R" A# |! A{t=x;x=y;y=t;} /*交換x,y的值*/ : T3 t( I% M4 W4 y" g0 i
if(x>z) , w4 Z3 R) h" {; M
{t=z;z=x;x=t;}/*交換x,z的值*/ 0 Q. L- O, y; a
if(y>z)
) j2 s- M9 r2 Y. D, {{t=y;y=z;z=t;}/*交換z,y的值*/
5 _. i- G4 X3 A, Dprintf("small to big: %d %d %d\n",x,y,z); } 3 l0 q9 y7 k& |* U
==============================================================
$ H" z* F2 o* Y" n: G【程序6
, B' f" J* x* Y0 H& t5 P, E2 ^題目:用*號輸出字母C的圖案。 ! V3 ]( t: S, ?" ~# y
1.程序分析:可先用'*'號在紙上寫出字母C,,再分行輸出。
4 |  q( ^5 p% @  k0 z$ c5 O2.程序源代碼: . B5 @+ s# j7 M6 m1 h" I& T
#include "stdio.h"
* c) M0 }# t$ C. E0 Dmain() {
$ A8 k5 D! L8 Wprintf("Hello C-world!\n");
" b/ N) W; }; N& b* V( A! ]printf(" ****\n");
8 {* z7 P5 Z' r7 a7 Zprintf(" *\n");
! L/ f0 s4 k2 T- Eprintf(" * \n");
) D- L" C, U" Z7 ]printf(" ****\n"); } ! T0 \) N& H2 ?4 i+ ?/ c  s7 r
============================================================== . \. _3 g3 F+ T; \2 z
【程序7
, e4 h1 O+ @1 b0 F* s  X! a4 z題目:輸出特殊圖案,,請?jiān)?/font>c環(huán)境中運(yùn)行,,看一看,Very Beautiful!
  s, d( U* r( w3 v) A/ K1.程序分析:字符共有256個(gè),。不同字符,,圖形不一樣。 ) o0 }- Y: X( Z$ n& V1 _2 |9 l
2.程序源代碼: " w% b- `+ ?0 u8 I* R- b/ P- Y
#include "stdio.h" 2 a& K  E* d' E& e! g' R
main()
; S0 V- M: x$ d{
$ s, ~" t" O3 x/ t; y: ]" Ichar a=176,b=219; * {" n* l4 L5 X1 ^6 B
printf("%c%c%c%c%c\n",b,a,a,a,b);
( ?! t$ I2 J0 O4 dprintf("%c%c%c%c%c\n",a,b,a,b,a); 1 x# c# d6 }* c. s# S3 ^3 m- _
printf("%c%c%c%c%c\n",a,a,b,a,a); ! S/ |# \: U+ c! W# F7 o
printf("%c%c%c%c%c\n",a,b,a,b,a); ; E' r/ N9 c" A0 U- O
printf("%c%c%c%c%c\n",b,a,a,a,b);} & ~# M9 o! ~6 m" }7 y
============================================================== + z! \+ g8 f/ r* a$ w2 A
【程序83 |, Z. T; b$ j2 E! a
題目:輸出9*9口訣。 - M7 e; a# i4 T  H1 |" E- J/ U$ y
1.程序分析:分行與列考慮,,共99列,,i控制行,j控制列,。
) x1 {# l; y  k% L8 {. |0 \2.程序源代碼:
3 }7 L* s0 f7 k5 T3 {, P  O#include "stdio.h" ' y9 H" c  Q# t4 L3 z* i
main()
3 I! b& M& V9 ^$ I% Q{
5 U" i: a1 V  g: }2 g, Q" F( \6 Oint i,j,result;
0 ?& A# X! `9 r: `& Z1 ^4 w2 ]printf("\n"); ; M0 d9 K7 D" i' m! {
for (i=1;i<10;i++)
0 c% X6 D3 v) {, M; j) }{ for(j=1;j<10;j++)
& e# I& S* f  l0 j5 ~{
+ }, k$ R! A0 oresult=i*j;
( O$ I, l' A, h* _' ^: }printf("%d*%d=%-3d",i,j,result);/*-3d表示左對齊,,占3*/
7 F' u% F1 r  a: k7 ~}
2 S, c; U/ c) h3 G' q2 mprintf("\n");/*每一行后換行*/
2 Y! \  t# s1 Z}
5 n5 ?( Z: D9 ?* ~/ q. Q+ h  g4 N}
  A$ M* h0 w6 t, H0 n===============================================
* K1 r! s6 z/ }' ~
2#
發(fā)表于 2017-9-22 10:21:51 | 只看該作者
感謝樓主的分享!�,�,!
3#
發(fā)表于 2017-9-22 10:22:12 | 只看該作者
我竟然發(fā)現(xiàn)我有點(diǎn)看得懂
4#
發(fā)表于 2017-9-22 10:42:30 | 只看該作者
c語言。,。,。�,?床欢�
5#
發(fā)表于 2017-9-22 10:59:43 | 只看該作者
說好的一百例怎么只有幾個(gè),?
6#
發(fā)表于 2017-9-22 11:32:18 | 只看該作者
附件呢?,?,?
7#
發(fā)表于 2017-9-22 12:26:17 | 只看該作者
基本都忘了
9 L: m5 }1 ]! ?& [$ X: e1 u  r軟件類的,學(xué)了就要用
8#
發(fā)表于 2017-9-22 12:54:50 | 只看該作者
樓主,,求分享剩下的
9#
發(fā)表于 2017-9-22 15:44:21 | 只看該作者
玩玩的東西
10#
發(fā)表于 2017-9-22 23:42:20 | 只看該作者
這是和電腦有關(guān)的知識,,做機(jī)械的用不上吧
您需要登錄后才可以回帖 登錄 | 注冊會員

本版積分規(guī)則

小黑屋|手機(jī)版|Archiver|機(jī)械社區(qū) ( 京ICP備10217105號-1,,京ICP證050210號,,浙公網(wǎng)安備33038202004372號 )

GMT+8, 2025-2-25 04:30 , Processed in 0.062673 second(s), 13 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回復(fù) 返回頂部 返回列表