数学建模社区-数学中国

标题: 测验2: Python基本图形绘制 (第2周) [打印本页]

作者: 杨利霞    时间: 2020-5-10 16:21
标题: 测验2: Python基本图形绘制 (第2周)
测验2: Python基本图形绘制 (第2周)2 v5 \  Z. T6 B2 Y) l
测验2: Python基本图形绘制 (第2周)
/ \( e8 |6 l: O. Q6 B( t( K2 x4 _
单项选择题" @+ ^1 ^5 R1 Y$ L" p) G5 r) N
$ s. V% I/ \4 N7 l. r" h
1、哪个选项不能正确引用turtle库进而使用setup()函数?( [. n9 l% u# L# S! \

2 L$ F! G: t$ b  W' aA、import turtle as t
9 @" ^& h) j4 H2 L6 ]8 ~. q/ h$ p( s+ Y+ ]
B、import turtle
* {, K- ?- G4 i0 _- X1 H6 `& n5 s
5 C' a  N% W0 U* t7 W+ ]C、import setup from turtle4 G/ m2 M. s. ]0 |$ V# M# t% q

2 y$ c  Z" H0 H1 jD、from turtle import*  t( P9 |! K2 i

' b9 N( t# t# F- e" z正确答案 C* m4 p5 q' ^5 @9 s( c4 R; E
import只有三种使用方法,以turtle库为例:! K- q. S8 Y' n* J4 @% N; |
+ X* T/ ~8 w1 w' J8 t
import turtle
6 m3 ~+ g; w: c( {# V1 M" F1 E- B/ f- @8 Q" j2 a' F3 {
from turtle import setup 或 from turtle import *
6 J% c  a$ a; d8 U7 |$ B9 F9 U) J" {! m
import turtle as t (其中t是别名,可以更换其他名称)1 O& S1 T; _  k& L* b/ E2 z
9 t/ p  C4 J7 z2 z
2、关于turtle库,哪个选项的描述是错误的?
+ {0 Z2 J8 q- |2 U! d, `0 w- y3 V6 f, ]. m, y; b# w  p- b
A、turtle库最早成功应用于LOGO编程语言
. t, Q. B; J2 q% i' q, C9 u1 U% D- O& G" @# p: V* @
B、turtle绘图体系以水平右侧为绝对方位的0度9 R9 b% e6 c. e0 p: z  _

% @0 J8 I* [# ?+ k8 h. v/ I4 h0 a' z9 jC、turtle坐标系的原点默认在屏幕左上角# F( t7 W+ d2 @
. f: F2 A8 ~% R0 R8 \+ v4 p
D、turtle库是一个直观有趣的图形绘制函数库& ^8 q  m9 T" |* L8 W- n, x. t

4 f& Y, |: S. b, ]5 A正确答案 C
; f7 T2 m( f4 f' Xturtle坐标系的原点默认在窗体正中间, s, @  n  B; R9 W* q0 M' C3 m3 [

% D" W, [1 L) u3、哪个选项是turtle绘图中角度坐标系的绝对0度方向?
: {" q2 L( R. l0 L# L
  B; T& m3 a3 g7 E2 ^A、画布正上方7 y) ~6 G( V4 n( }9 d( {" m

! Q) Q; u) X% G/ X# DB、画布正下方9 R: [0 Z: Y/ Y  I4 @7 n
, d* r4 ]' b* t* J
C、画布正左方8 ]1 }# Z, |* P9 }; z  K; s. m8 N

' C1 P9 U4 ~( M5 ]; X$ Y; dD、画布正右方7 J  C" G& d- J7 b& o4 G; k
, \  ^7 X. K( [  C9 l$ Y) X
正确答案 D8 j1 I1 |9 p; }. F, W# k5 o+ ^
坐标系类似这样,角度坐标系的绝对0度方向是右侧% j. W/ Z+ O( |) v+ l
2 i+ }7 G& l" I+ y7 b
4、哪个选项是下面代码的执行结果?+ d$ X7 j! Y+ |, \7 L; Y% I  @; h

- B1 c% C! B$ K; ~  _7 M; c! n4 F/ kturtle.circle(-90,90)6 D3 C: W/ B# m5 H
1
# S7 _4 D; z$ L, ~* VA、绘制一个半径为90像素的弧形,圆心在小海龟当前行进的左侧
8 ~1 o0 `% A) w2 G
5 g0 g* i# y4 S# c/ zB、绘制一个半径为90像素的整圆形
; n2 b' o$ m. y, [* _7 W2 V1 @9 I( j+ S) q
C、绘制一个半径为90像素的弧形,圆心在画布正中心) w' W( _' Y. @9 d$ V" ?
: e$ h- \' G! Q) v" o% w- g
D、绘制一个半径为90像素的弧形,圆心在小海龟当前行进的右侧9 c& Q# Q7 a% k, R
% ]/ @) v4 @4 H* K* h: A- R" a. M
正确答案 D
9 G: B2 N5 L+ o. J6 j) icircle(x, y) 表示 以x长度为半径,y为角度,当前方向左侧x出为圆心,画圆。其中x和y都可以是负数,相应取反。
! o2 a7 y) a4 L, U: Z) l1 }2 ?5 Y9 L2 w" {: W! j; g0 w
5、关于turtle库绘图函数,哪个选项的描述是错误的?
- a/ `- K1 K9 p3 o9 z* u, u5 l) f: v, O& J; e2 e
A、turtle.seth(to_angle)函数的作用是设置小海龟当前行进方向为to_angle,to_angle是角度的整数值! O5 s( t' U+ S; \. ~# {

! X5 C0 t5 i9 m: R( x# ]B、turtle.fd(distance)函数的作用是向小海龟当前行进方向前进distance距离  S" x: {6 [  `2 G& l
' M) q% L/ N* b  h0 g! o
C、turtle.circle(radius, extent=None)函数的作用是绘制一个椭圆形,extent参数可选
8 {) K8 }2 o! @* B( P' D: E6 g( ^. z) @  T
D、turtle.pensize(size)函数的作用是改变画笔的宽度为size像素' e, N' t) U& o/ t& d: A5 u

+ ~( l2 B0 {& t2 x4 ^! {4 f% z7 J正确答案 C
4 l. W2 g2 ^0 |" w9 ]3 Ncircle()函数不能绘制椭圆形。
8 y; T  X! K; w1 J
1 P  H# a7 n; o6、关于turtle库的画笔控制函数,哪个选项的描述是错误的?
; V, y4 s/ X/ G3 l+ K
8 Z; Y9 W' L, E$ x' b. r8 tA、turtle.width()和turtle.pensize()都可以用来设置画笔尺寸
3 c3 w- B9 w0 @% ^* g
2 W1 h2 x7 `+ R+ H4 QB、turtle.pendown()作用是落下画笔,并移动画笔绘制一个点, c( n% \/ {/ @, a
! }1 }- C5 S7 j
C、turtle.penup()的别名有turtle.pu(),turtle.up(), M6 O2 [+ m; G  Z
" a2 B! D& M; c: q2 P( A
D、turtle.colormode()的作用是设置画笔RGB颜色的表示模式
) f5 ?; y. h1 d- x, z. Q' S
8 _5 G. _) Z; X6 W9 j7 W正确答案 B7 g' G$ J$ j+ |% S# z4 t
turtle.pendown()只是放下画笔,并不绘制任何内容。
( d- R9 w! p3 A8 K% o% w2 s3 D% E: L1 R' Z  Y2 f& V$ O" E2 I
7、哪个选项不能改变turtle画笔的运行方向?) d' k8 ]9 C: f, [
$ d  o# e/ w8 ?* u5 |
A、bk()
9 C  {  u# y4 a& l7 E4 |- @$ r; y9 h+ S2 G9 W  W0 L9 ]6 j  `0 H3 r
B、seth()
6 g! I4 i3 B0 o- p' M
2 t, y- O& |* }. [$ kC、left()
- S+ u4 t/ K: h! G7 ^5 {- t
" U5 V* E2 b6 h' u8 kD、right()
. K  G" i! F. J1 Q1 w/ F
4 v% H; v9 M- ~正确答案 A" X0 m! i1 i$ o; B& z7 L
bk()只能后退,但不改变方向,“后退"不是"转向”。
! s8 @; b# }( z! r' S3 r6 Q/ G; l5 m) ?' j5 b( @
8、哪个选项所列保留字能够实现对一组语句的循环执行?
! B  Y6 n% [+ k/ [7 I/ |% D& p& a* W6 R1 h, o: f
A、while和def# J( j+ Y5 A1 l; A5 G
0 [: A+ ]% E7 U& H: }7 r
B、for和in, Y1 M, a3 |/ d2 P/ T) x
3 p& z* e5 D3 f2 d# B
C、if和else8 l% y" |  f( F  i' ^# Y
) M  Q$ `& i% x( H' n- E5 M- z
D、range()
$ T- ~: e5 s% i. l1 E0 a" S
' ]( Z6 N. x' ^  Z( f1 }* q正确答案 B3 `$ W; |" n2 c+ f6 o; q2 u2 P
循环相关保留字是:for…in和while,但def用于定义函数,不相关。/ O- v) V$ X( d3 K7 ]

3 V8 y: K+ Z- i. a- a% ?4 Y# f9、哪个选项能够使用turtle库绘制一个半圆形?
- f( M/ C# P" n: I4 w; Y, P  g* P) n6 D5 w, c, t7 B$ [
A、turtle.fd(100)
; u# I( ?2 |% M- R; A8 V( P
! J- H% y3 c' u  jB、turtle.circle(100)
% |' Y  Y6 {0 ]' w* k+ {6 x4 |' U
C、turtle.circle(100, -180)
9 O  Q, D  P  }3 ?# q$ ]6 N
& z- j4 E4 }1 i4 v$ mD、turtle.circle(100, 90)
0 b* q5 P" \9 V' ^/ P, R+ o2 p! h7 h! N! K* j. K1 O4 O
正确答案 C6 R, o1 i% d# K! u5 m, u# Q
circle(x,y)函数的用法,绘制半圆,第二个参数y是180的奇数倍。
9 v/ z+ C2 X! `( i' g/ V
' u, |( ^5 q4 @& Q, ^) t10、哪个选项对turtle.done()的描述是正确的?5 a) `9 l. J8 n8 P( g* Y1 o

3 h1 j( U& H* z; m2 o! JA、turtle.done()用来暂停画笔绘制,用户响应后还可以继续绘制9 K" @/ G4 j# C% O( Y& G

2 J% i) J# q- T& X" M3 SB、turtle.done()放在代码最后,是turtle绘图的必要要求,表示绘制完成
7 ?/ S6 R# o  C; @& x- A
- F8 U8 t3 B/ R7 ]2 X& w! `C、turtle.done()用来停止画笔绘制,但绘图窗体不关闭1 m! l$ T2 k  G( ?
, y0 E1 s1 f. z! e
D、turtle.done()用来隐藏turtle绘制画笔,一般放在代码最后
  {8 G+ _  ~3 w. `' z7 f. R. M" O! }& R4 G. {1 S
正确答案 C
8 w2 ~: ?7 }( y, Z建议在每个turtle绘图最后增加turtle.done()。
% O2 e6 E1 W* }2 R0 _0 H, X; @7 f' E+ B$ F2 B0 q2 l
turtle八边形绘制+ b7 M  D# V* g3 X

- e! k6 M8 _- m" }使用turtle库,绘制一个八边形。- u- c7 F+ E8 D5 i

1 Y  S1 y0 T5 V. _& Q2 ]: X注意:这是一个自动评阅题目,请补充"编程模板"中横线内容,横线不保留。0 G+ H' l4 n# ?8 r, B+ P  P' _
" g: _8 [6 T$ U( Z  Z% J  [
输出示例
. U: ~- k; I9 ?. B. Z8 m' W6 O' e
八边形效果如下:
/ k, Q8 Q  T& M( a$ l2 M3 [2 t/ m2 V* L) E
【我的答案】3 @4 F# I: p: J  e
" `1 q+ ?5 h. U7 [, t
import turtle as t
& m5 G- G# J5 d$ |; {$ M3 _& a1 L3 p8 u; F$ p3 K* t; {. H2 I
t.pensize(2)$ P" Y+ t& O) `9 q
: ]! ?: }/ p9 p$ ]- f; i/ x
for i in range(8):# x% K7 @6 v+ }9 O5 L- O$ g
2 {9 m- p4 @8 S' F; t( P
    t.fd(100)
, s! M4 e6 T7 U, e* k+ W
( J0 d9 z; t6 L. M  Y& L    t.left(45)
8 `  W3 ]; V8 J  |6 ~: w( n
. h( p* w$ k# u6 K1
% l% [2 B5 l4 \' Z3 ]. R! O! @2
9 W- V1 y  \8 R1 n1 `3
5 K# r% X& E! c! t! }* t4
+ m, J# S3 I3 `4 D52 C* v( \( j1 C" K0 _* i0 E
6' M9 s/ Y  ]' k# c5 @
7
" F) u& D! H: v) }. C* N8  w" j( F. h* ]
90 F9 f; @* v% r
10. w  J0 Z5 G6 G: d
【参考代码】: s4 L9 ?/ p: r3 g: Y9 K5 Q, e
9 z& t  `0 E3 K; A& G9 A( K

& t9 D# G7 b" [8 Z) A#OctagonDraw.py
" q/ P( O  e- m; U. [+ I/ B8 l
) m% X7 l7 p% c$ Bimport turtle as t
- X) L. C( o/ _. {: o# l" j
+ u4 t1 w, u+ c- P8 F0 x3 [t.pensize(2)
5 y9 R; p# H8 T. l/ N( `$ N' }
for i in range(8):
1 v# B! s1 Y/ c/ P- c, H7 b( T+ f! f: \; F4 f% j( b
    t.fd(100)* q, z7 X  D* i% g' W
  b( s. ~+ A! t
    t.left(45); E+ p7 E( ^: ~2 M$ {9 h: v
1( H, m& I8 Y1 P9 |, w1 C- b
2& B% s% V# B8 t3 I; d9 ?, o; g4 o
3
, F0 `' [+ T6 u4. k$ C' Q6 Z1 P7 Y0 ?, a) @
54 |. y/ @0 J" y' A# W) c, i, i: k" |
6
% w3 c# |5 ?- E) y% {) F! x6 N0 Q7
+ ^. O! J# r$ G1 n. h7 P8& y2 ]. [, E( y$ z
98 i- F/ ~% W  @6 S
10
- |: l# t: l+ U* d% ?6 Y5 X2 y117 ^. j3 W1 ?' ^! _( ~+ ?
12
: W9 u- H+ h5 W7 D7 M* M* sturtle八角图形绘制
4 p- O0 D4 x1 b  q! K+ N  K2 u4 K/ K; [6 A/ }+ K
使用turtle库,绘制一个八角图形。' y& Y% G/ ^2 C! l) U! w

5 O* G' ?( W; C5 g$ {1 K注意:这是一个自动评阅题目,请补充"编程模板"中横线内容,横线不保留。
& F$ `9 d0 w* @% }6 K8 n# I' c. s9 Q. g: I
【我的答案】
% K& a8 N% S# _2 ?" `% C! K& w! ?' Z( c0 G
import turtle as t' w' G: E, e8 b( H
2 }3 j, w  U! U6 X+ r. X6 b
t.pensize(2)
3 i# g! o$ }" E' V8 m: V8 J- Z5 z' C: W
for i in range(8):5 E, ?1 y' M* i* j8 N' I

! `& n$ H/ }8 a; n  v    t.fd(150)
% L" I  y$ x% {7 C
5 }6 u9 `% a1 [9 ?1 M& t% [" A    t.left(135)3 r$ `& T7 q% y  X& Z. Y" G% M
0 b# q' Q% b3 ^
1
5 H) N) \8 {) M2
" b0 B8 D0 `2 M0 x( h30 [( M0 W* |- k8 [7 p; t& U5 ~
4
8 Y) W, @' u" z, v2 F51 \5 M  Z. X; G9 ]* @4 N
6% f. @: G4 D& a9 G0 P! f* D
7
2 _) f6 p& Q1 R# Z4 G/ G83 p# n+ ~0 s6 t6 J, e
9( k  a+ u* j7 H6 |- [
10& z0 x  c5 m& l, U5 Y
【参考代码】# L. o3 Y7 E' ~* m. L2 A& O

9 D1 [: Z+ U: \
: N6 }+ k; |7 h+ pimport turtle as t! A. i' k" C, X; [% k

4 a( ^6 X, N- x  L6 p  j+ vt.pensize(2)
8 Y8 m& h1 J8 }; Y5 z- _2 @: B; T
3 _- Z& h" Z& m% B4 a5 Y) gfor i in range(8):
* j# h2 w8 N4 u8 ?3 c: V9 |$ ~, ^$ V4 e' Y; f8 X  _
    t.fd(150)( g0 M' m) N) B( ?, ^
    t.left(135)$ H! X: w' ]5 M$ Q4 F
* o$ q6 v8 _& R0 U% |% P
# 计算循环和角度的乘积,应该为360的整数倍。! S- h* }- ^' t0 C8 B% q
————————————————5 O1 `9 }* S. l% V4 n# F* ^
版权声明:本文为CSDN博主「半根蓝白」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
. P- }" ?# b& N- D3 E: ?. v: N. }原文链接:https://blog.csdn.net/BanGenLanBai/article/details/106037046
( j' t% I8 z# [6 j8 ]/ I/ P1 ~: M* q; f4 |& W
4 Y- g( b( e- d1 G$ }8 R2 [+ i; u

作者: 2863358207    时间: 2020-5-10 17:28
发表回复好好好好好好好好好
: o, D# N" \( K& i
作者: chace    时间: 2020-5-11 12:57
感谢分享   ! m' Y- N& ]9 A0 U% K





欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5