找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 97|回复: 1
打印 上一主题 下一主题

C语言经典算法87-94

[复制链接]

114

主题

136

帖子

1000

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1000
跳转到指定楼层
1#
发表于 2017-10-12 09:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您!

您需要 登录 才可以下载或查看,没有帐号?注册

x
【程序87
5 H* C4 n: L6 \& S/ o; e' H6 S1 J题目:回答结果(结构体变量传递)
5 V1 m4 J1 v9 @7 v1.程序分析:
6 c9 P% O5 E3 W2.程序源代码:
- d7 h% ^& ^) @# d2 v0 R2 |0 X#include "stdio.h" ! ^2 W  G: S% P% y# x
struct student
: M8 b* V8 {, L% C4 Q6 H3 Y{ int x;
. I; O' ~8 A& P* R# T; Lchar c;
/ a- _6 ^+ {7 n% d} a; & u+ D8 \5 m: W0 F* B. ^& i
main() 5 f- e" x. S; d2 i% d3 N
{a.x=3;
  @3 k; Q# H3 W" G9 p: l5 ea.c='a';
" M% g) j( y, R. i# @1 I3 Vf(a);
: W9 |! V& P# V& p) C* a2 o  }printf("%d,%c",a.x,a.c); 9 J% D+ G- N9 B% S) ~
}
& C8 }/ a6 Q( C/ F3 w. W% Yf(struct student b)
0 M% r- O8 N, K4 O2 N& K. h{ 1 W$ a+ p7 |$ l  g3 B
b.x=20;
8 t. b9 K* H8 ~b.c='y';
8 T+ n0 r" L( T; ]: I3 y1 [- d- O}
2 {! f/ f" E# h" h7 g5 `7 L==============================================================
) H$ }& M0 K) h【程序88嵌入式信盈达企鹅要妖气呜呜吧久零纪要
8 A" b5 P$ E0 q% `! T题目:读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*。 0 N+ {6 ]2 L& G, ?: Q( h5 s$ G5 N3 f
1.程序分析:
0 P1 E- \# a) E5 L+ I% ^; B2.程序源代码:
- _5 A$ Y- H: m3 u& H: Y! Amain()
) w5 L% s: O+ f{int i,a,n=1; # W; Q; V: Y5 j9 \- {- q# f" X
while(n<=7)
8 Q8 t" R9 D- X& Q, u{ do {
) T8 |) j% x4 J  M, hscanf("%d",&a); & F" v4 v$ R$ A4 E
}while(a<1||a>50); * W+ z' f, d1 V6 O4 n- T
for(i=1;i<=a;i++) : e+ v3 _; x1 ~! Y
printf("*");
! b; V: q! J# W, @printf("\n");
9 U( D2 ]) F8 M: |/ {2 {n++;}
0 a( {' l+ }" E  _0 M& L# t1 rgetch();
" L9 s$ ?; o1 U! x2 m3 m} $ U7 \9 _8 P- O+ ]! m1 X
============================================================== 5 a' j0 V/ L  d8 n7 G% m# r+ T7 e
【程序89' y! k/ _; f$ u( B; x9 Y; J! i
题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:
) t; w6 Q3 L+ r2 L每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。 $ s. d4 R4 b/ i4 k$ t
1.程序分析: 0 _* {  Q. l, c
2.程序源代码: 3 }) T% o8 d) r! C! q1 E5 v
main() 3 Y. Q* V; F. {% G# {
{int a,i,aa[4],t; $ T' @$ [$ I# M' r* l
scanf("%d",&a);
+ u3 V, [7 F3 t- saa[0]=a ; , F2 L& A1 V- B
aa[1]=a 0/10;
" z4 b- \3 W& W; n% raa[2]=a 00/100; : s7 Y5 M& k0 u: L& ]& V% f. z  k" r
aa[3]=a/1000; , U" b$ \" [& D: H
for(i=0;i<=3;i++) . n5 e. y8 ^, i+ O
{aa+=5; * m2 ^. N( N" C  Y9 C( p: u& Y
aa%=10; ( k$ E- o4 i7 R0 `% M3 `
}
- a, E( r9 e. b9 k( J, cfor(i=0;i<=3/2;i++) & t, K0 h! V, r& C) }7 p, R1 W
{t=aa; & V( `( b! O; L9 g/ d& O: L
aa=aa[3-i];
/ [  x; X5 |% @- N# N7 _" x& daa[3-i]=t; # y8 n% t& V, x7 h6 S1 C0 Z: v, V
}
7 Y% K' W/ l" b. Ufor(i=3;i>=0;i--)
# y# \7 y4 ^+ c' |6 f4 yprintf("%d",aa); ( Z+ E* B6 x* D7 o' C8 p3 t" E7 L
} 6 ?. N4 e3 t; Y, R8 t& J' L
==============================================================
) `; F% `5 q; {$ w- ~【程序90& x5 h" u' u2 A1 D& o4 r
题目:专升本一题,读结果。 " a, ?( u  h. j9 w( a
1.程序分析:
& G- s) ?- K5 h! a2 s2.程序源代码: $ w" Z. M7 H/ I
#include "stdio.h"
# Z* \5 ?% \/ [; i#define M 5
! W0 }; m1 Q, K- kmain() , R7 [% }4 }! N( ~
{int a[M]={1,2,3,4,5}; ; w3 {, e2 a7 b" d0 k
int i,j,t;
+ q3 P9 p. y$ j3 ]) ^& ^: a* Y, Ki=0;j=M-1;
# ~; i4 E0 H9 |& G8 x! W' ^while(i {t=*(a+i); 7 j/ Z- [! v( R7 u! C9 E
*(a+i)=*(a+j);
1 p9 |4 W2 H# c" y/ J/ \*(a+j)=t; ) F' l" F/ E: J3 R; N
i++;j--; ; r) A' X  Z2 \% ^# [$ j
}
3 r# I1 \8 ?8 b5 a, `; }for(i=0;i printf("%d",*(a+i));
6 y5 E5 b3 P, V+ f/ q  i' u0 E}
$ F1 c/ ]! Q0 X9 \【程序91
2 T( U4 ]( }* \: k* ]题目:时间函数举例1
. m" K# {. y$ e# I1.程序分析:
7 t: m/ S6 \( {) _1 V7 T7 F5 d2.程序源代码:
8 j) E, A$ l5 `6 ~2 o0 Q#include "stdio.h"
( j  p1 Y  }# H' ?, ^#include "time.h"
: f3 E: }+ Q/ R) p* a  vvoid main() ) k6 w7 Q) d4 c! M& z( ?
{ time_t lt; /*define a longint time varible*/ 2 Z8 J9 v. L' ^+ B
lt=time(NULL);/*system time and date*/ 6 ~& b3 B! i" I3 F, D  l. ?
printf(ctime(<)); /*english format output*/
4 ?$ b9 M& O# ?5 v6 wprintf(asctime(localtime(<)));/*tranfer to tm*/ " b% k, A6 f1 ]% b; J) r
printf(asctime(gmtime(<))); /*tranfer to Greenwich time*/ 9 y  N5 P/ g3 n! {6 ]
}
' d7 z8 z* K9 F============================================================== 0 P1 _8 g; N: L& s7 b; a# E% Y( |
【程序92
' A8 d% R9 |  F2 k1 b3 o题目:时间函数举例2
9 M! p4 B9 p' \1.程序分析: ( ?$ z8 S8 k0 e) f( J6 q
2.程序源代码:
% N$ c! U* w1 e1 Y8 ~/*calculate time*/
0 F& O  ]( i/ H4 b#include "time.h" : h! G0 ]% g1 f# X
#include "stdio.h"
# Z1 u+ X9 f' l' H" _9 n* o6 R5 ]main() - y5 u/ U$ B, e3 U" f
{ time_t start,end;
( z. |' A; J7 O- q4 p) dint i;
9 \% |8 E5 o8 ^start=time(NULL);
; a5 [6 C. r7 Ifor(i=0;i<3000;i++) ; }3 ?: ~, }1 h2 F4 j' C5 }, q4 O" s
{ printf("\1\1\1\1\1\1\1\1\1\1\n");} & u. {8 z3 o6 X1 i( r" K- }
end=time(NULL); * B' o3 F# o" E; x3 e+ v
printf("\1: The different is %6.3f\n",difftime(end,start)); 2 w% i9 P* Y# _# v% t
} $ V; G7 z5 W3 u% L: h, Q
==============================================================   A! y, V$ W# c5 _
【程序93
0 a- @$ }! w, G" |题目:时间函数举例3
; g) s7 b: _" T( S5 P0 S  r. A1.程序分析:
3 {, @6 I( G  y( Z' S6 k$ j2.程序源代码:
) Q" ?" @- a; Q% ?/*calculate time*/
1 }. S' ^  y  z/ l. c#include "time.h"
, V" U9 k5 [9 ~  ]# {4 H2 U; `#include "stdio.h" 1 G! T3 g& f. d% m+ D
main()
) W' v$ O. x3 [. v{ clock_t start,end; - [5 N7 ]7 }- x) `
int i;
: H  T% u8 k) |3 m5 ?- Ddouble var;
$ c. o- U- _+ I. Bstart=clock();
' g  E+ f& g6 f/ pfor(i=0;i<10000;i++) ! b% U3 s% K2 Z/ L+ t, [6 D' x: W
{ printf("\1\1\1\1\1\1\1\1\1\1\n");}
; ]* y1 Z6 s% Z+ |; U0 I, dend=clock(); 0 c0 h. {6 F4 Q3 O! r
printf("\1: The different is %6.3f\n",(double)(end-start));
- w) Z& J: z2 ?+ R5 a}
% |* z2 Y3 t1 H  c6 t============================================================== . r  R- v# {# B2 \! |4 k4 j
【程序94( S$ |/ k$ a" ?$ k5 Z" d) S
题目:时间函数举例4,一个猜数游戏,判断一个人反应快慢。(版主初学时编的)
/ O: O* v) z$ ~3 R0 S; \' [1.程序分析: 3 G% ~, \' m2 `3 y7 s: Y! G  R% S, P" T
2.程序源代码:
* R/ R5 T; H2 m$ G9 t! y# ?6 {  k#include "time.h" 7 c; C6 b6 b, U& y( i# M- q
#include "stdlib.h" " d' z0 B3 b7 ]$ B* w! W
#include "stdio.h"
0 U$ s1 B3 U! p! a) [$ mmain() # P! ]( z1 _/ F1 e" m
{char c; % n: i% w: Z6 ?
clock_t start,end; ) Q, R2 x7 y. {3 A
time_t a,b; $ e, f3 q5 e4 U& v" b+ e1 b
double var;
: |9 g( c9 Q" E. U1 S9 D$ bint i,guess; / Y6 C2 w2 s% D3 ~
srand(time(NULL)); / d6 F- O& D0 |% j( x
printf("do you want to play it.('y' or 'n') \n"); # G6 X! ?: m6 Y* _" h
loop:
2 Z; [* S/ q! n8 v9 H/ U' Lwhile((c=getchar())=='y')
5 c- P" \9 t' F$ Z' ?{ ; j9 V" Q+ @0 C7 L! Q+ E
i=rand() 0;
% {" n, l6 l. a" t3 Kprintf("\nplease input number you guess:\n");
' K/ h  m+ B" \6 }. ^start=clock(); 5 l: y5 z/ ^% d% x$ q
a=time(NULL);
; C4 s  E( f0 p! [& w' Xscanf("%d",&guess); ; ?3 m. B( v7 v
while(guess!=i) " @4 t8 p" ~/ @" @; O! W' ~+ w
{if(guess>i) % f$ D% }" v: E+ C# V- A
{printf("please input a little smaller.\n"); % ], Y0 C2 H! w9 s+ x; |6 ]3 e
scanf("%d",&guess);}   ?- f- @3 `$ ?; s$ G
else 8 S( w* M& _, D/ S- E5 O9 {. Y5 X
{printf("please input a little bigger.\n"); 3 E& I6 T. m" j7 |! P8 h& t
scanf("%d",&guess);}
9 e' b# B8 }* g6 q  x0 H2 ]} 8 t5 Z% S* s7 {
end=clock();
2 s5 I! i7 k) L3 l) ab=time(NULL);
1 S. g- H7 T  |, U' ^1 [printf("\1: It took you %6.3f seconds\n",var=(double)(end-start)/18.2); 6 {3 ?! a9 y+ Q
printf("\1: it took you %6.3f seconds\n\n",difftime(b,a));
0 ]  g  U* }/ o4 T; z( ]" z( u! Pif(var<15) . M( H. M4 U& j8 k9 T; }( I3 d$ O
printf("\1\1 You are very clever! \1\1\n\n");
4 t/ q) `% n0 Belse if(var<25)
! v7 z/ E( B& y& L$ D0 _! i" p5 lprintf("\1\1 you are normal! \1\1\n\n");
) d+ f! Q# q$ x. [9 z* N* Q) A% Uelse   }6 e  \2 p4 u- s9 y4 j
printf("\1\1 you are stupid! \1\1\n\n"); 1 }3 D* x) X6 l- F6 f
printf("\1\1 Congradulations \1\1\n\n");
; S* E1 p6 P/ T  @3 yprintf("The number you guess is %d",i);
+ ?. v+ H+ L( B: j: z" x, k} 6 k% I- k( Q- b8 P
printf("\ndo you want to try it again?(\"yy\".or.\"n\")\n");
7 b- a0 ?2 N5 Hif((c=getch())=='y')   w2 A2 `5 A* h) R( ^
goto loop;
) U1 R* D! P0 ~. S: a/ O6 p}

. C1 j" e3 f" c9 z/ z3 ]+ ^
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 支持!支持! 反对!反对!

0

主题

7

帖子

20

积分

二级会员(20)

Rank: 2Rank: 2

积分
20
2#
发表于 2018-5-3 17:36 | 只看该作者
66666666666666
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2024-9-8 12:20 , Processed in 0.056384 second(s), 31 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表