
复制代码
代码如下:
#include
<stdio.h>
#include
<stdlib.h>
int
main()
{
int
i,j,k
int
line
int
*prev,
*next
printf("输入要查看杨辉三角的行数(大于2):")
scanf("%d",&line)
if(line
<
2)
{
printf("行数小于2,Goodbye!n")
exit(1)
}
for(i=1
i<=line
i++) //前两行的打印
printf("
")
printf("%6dn",1)
for(i=1
i<=line-1
i++)
printf("
")
printf("%6d%6dn",1,1)
prev
=
malloc(2*sizeof(int))
prev[0]
=
1
prev[1]
=
1
for(i=3
i<=line
i++) //从第三行开始打印
{
next
=
malloc(i*sizeof(int))
next[0]
=
1
next[i-1]
=
1
for(j=line
j>=i
j--)//外部空格
{
printf("
")
}
printf("%6d",1)
for(k=2
k<i
k++)//数字
{
next[k-1]
=
prev[k-2]
+
prev[k-1]
printf("%6d",next[k-1])
}
}
printf("%6dn",1)
free(prev)
prev
=
next
}
free(next)
return
0
}
Python程序开发之简单小程序实例
(11)小 游戏 -跳动的小球
一、项目功能
二、项目分析
根据项目功能自定义两个类,一个用于控制小球在窗体中的运动,一个用于接收用户按下左右键时,挡板在窗体中的运动。在控制小球的类中,我们还需要考虑当小球下降时,碰到挡板时的位置判断。
三、程序源代码
源码部分截图:
源码:
#!/usr/bin/python3.6
# -*- coding: GBK -*-
#导入相应模块
from tkinter import *
import random
import time
#自定义小球的类 Ball
class Ball:
# 初始化
def __init__(self,canvas,paddle,color):
#传递画布值
self.canvas=canvas
#传递挡板值
self.paddle=paddle
#画圆并且保存其ID
self.id=canvas.create_oval(10,10,25,25,fill=color)
self.canvas.move(self.id,245,100)
#小球的水平位置起始列表
start=[-3,-2,-1,1,2,3]
#随机化位置列表
random.shuffle(start)
self.x=start[0]
self.y=-2
self.canvas_heigh=self.canvas.winfo_height()#获取窗口高度并保存
self.canvas_width=self.canvas.winfo_width()
#根据参数值绘制小球
def draw(self):
self.canvas.move(self.id,self.x,self.y)
pos=self.canvas.coords(self.id)#返回相应ID代表的图形的当前坐标(左上角和右上角坐标)
#使得小球不会超出窗口
pad=self.canvas.coords(self.paddle.id)#获取小球挡板的坐标
if pos[1]=self.canvas_heigh or(pos[3]>=pad[1] and pos[2]>=pad[0] and pos[2]
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)