第1题

# -*- coding:cp936 -*-
'''------------------------------------------------------
【程序设计】
---------------------------------------------------------

题目:打印如下九九乘法表

1*1=1 
2*1=2 2*2=4 
3*1=3 3*2=6 3*3=9 
4*1=4 4*2=8 4*3=12 4*4=16 
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81

要求:使用for循环的方式完成

---------------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其它函数中的
      任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''
def main():
    #**********Program**********
    for i in range(1,10):
    	for j in range(1,i+1):
    		print("{}*{}={}".format(i,j,i*j), end=" ")
    		#print("%s*%s=%s"%(i,j,i*j), end=" ")
    	print()
    #**********  End  **********
    
if __name__ == '__main__':
    main()  

第2题

# -*- coding:cp936 -*-
'''------------------------------------------------------
【程序设计】
---------------------------------------------------------

题目:计算前n个自然数的阶乘之和1!+2!+3!+...+n!的值

---------------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其它函数中的
      任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''
def main():
    n = int(input("【请输入一个正整数n: 】")) 
    result, sum = 1, 1
    #**********Program**********
    for i in range(2,n+1):
        sum*=i
        result+=sum             
    #**********  End  **********
    print('%d' %result)
    
if __name__ == '__main__':
    main()  

第3题

# -*- coding:cp936 -*-
'''------------------------------------------------------
【程序设计】
---------------------------------------------------------

题目:编写程序,输出由1、2、3、4这四个数字组成的每位数都不相同的所有三位数

要求:每个数字用换行隔开

---------------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其它函数中的
      任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''
def main():
    digits = (1, 2, 3, 4)
    for i in digits:
        for j in digits:
            for k in digits:
    #**********Program**********
                if i!=j and j!=k and i!=k:
                    print(i*100+j*10+k)            
    #**********  End  **********
    
if __name__ == '__main__':
    main()  

第4题

# -*- coding:cp936 -*-
'''------------------------------------------------------
【程序设计】
---------------------------------------------------------

题目:编写程序,输出如下所示三角形图案。

        * 

      * * * 

    * * * * * 

  * * * * * * * 

* * * * * * * * *

要求:使用for循环的方式完成

---------------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其它函数中的
      任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''
def main():
    for i in range(1,6):
        for j in range(5-i):
            print(" ",end=" ")  
    #**********Program**********
        for k in range(1,2*i):
            print("*",end=" ")
        print()              
    #**********  End  **********  
if __name__ == '__main__':
    main()  

第5题

# -*- coding:cp936 -*-
'''------------------------------------------------------
【程序设计】
---------------------------------------------------------

题目:编写程序,输出如下所示图案。

      * 

    * * * 

  * * * * * 

* * * * * * * 

  * * * * * 

    * * * 

      * 
 

要求:使用for循环的方式完成

---------------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其它函数中的
      任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''
def main():
#**********Program**********
    for i in range(1,5):
        for j in range(4-i):
            print(" ",end=" ")
        for j in range(1,2*i):
            print("*",end=" ")
        print("\\n")            
#**********  End  **********  
    for i in range(3,0,-1):
        for j in range(4-i):
            print(" ",end=" ")
        for j in range(1,2*i):
            print("*",end=" ")
        print("\\n")
if __name__ == '__main__':
    main()  

第6题

# -*- coding:cp936 -*-
'''------------------------------------------------------
【程序设计】
---------------------------------------------------------

题目:编写程序计算Fibonacci数列的第n项(n为一个正整数),n从键盘输入。

说明:若n=15,则Fibonacci数列的第15项为610
      若n=20,则Fibonacci数列的第20项为6765。
Fibonacci数列的定义:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)
如:1、1、2、3、5、8、13、21、34、……

要求:1.判断输入1或者2的情况
      2.采用递归算法

---------------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其它函数中的
      任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''

def Fibonacci(i):
#**********Program**********
    if(i==1 or i==2):
        return 1
    else:
        return Fibonacci(i-1)+Fibonacci(i-2)	
#**********end**********    

if __name__=='__main__':
    n=int(input("【请输入Fibonacci数列的第n项=】"))
    print('【Fibonacci数列的第%d项为】%d'%(n,Fibonacci(n)))

第7题

# -*- coding:cp936 -*-
'''------------------------------------------------------
【程序设计】
---------------------------------------------------------

题目:编程序计算形式如:sum=a+aa+aaa+aaaa+…+aaa…aaa的表达式的值。

说明:补充完整函数fun(),其中a为小于10的自然数,n为项数,给定
      变量result作为函数返回值,变量ts作为每项数值
      
例如:若a=2,n=4,则sum=2+22+222+2222=2468。

---------------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其它函数中的
      任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''
def fun(a,n):
    result,ts=0,0
#********** Program **********
    if 0<a<10:
        for i in range(n):
            ts=ts*10+a
            result=result+ts 
    return result
#********** End **********   

if __name__=='__main__':
    a=int(input("【请输入一个整数(1--9):】"))
    n=int(input("【请输入表达式求和的项数:】" ))
    sum=fun(a,n)
    print('【sum=】%d'%sum)

第8题

# -*- coding:cp936 -*-
'''------------------------------------------------------
【程序设计】
---------------------------------------------------------

题目:编程,将1--10的平方和依次添加到一个新建的列表中

说明:补充完整函数main(),其中给定变量squares作为输出列表

要求:输出结果如下所示

[1]
[1, 4]
[1, 4, 9]
[1, 4, 9, 16]
[1, 4, 9, 16, 25]
[1, 4, 9, 16, 25, 36]
[1, 4, 9, 16, 25, 36, 49]
[1, 4, 9, 16, 25, 36, 49, 64]
[1, 4, 9, 16, 25, 36, 49, 64, 81]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

要求:使用for循环的方式完成

---------------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其它函数中的
      任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''
def main():
    squares=[]
    #********** Program **********
     for x in range(1,11):    
        squares.append(x**2)
        print(squares)     
    #********** End **********    
        
        
if __name__ == '__main__':
    main() 

第9题

# -*- coding:cp936 -*-
'''------------------------------------------------------
【程序设计】
---------------------------------------------------------

题目:编程输出列表s=[12,34,56,1,9,80]中的元素最大值和最小值。

例如:s=[1,2,3,4,5,6],则输出如下:
列表最大值: 6
列表最小值: 1

---------------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其它函数中的
      任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''
def main():
    #********** Program **********
    s=[12,34,56,1,9,80]
    print("列表最大值:",max(s))
    print("列表最小值:",min(s))    
    #********** End **********          
        
if __name__ == '__main__':
    main() 

第10题

# -*- coding:cp936 -*-
'''------------------------------------------------------
【程序设计】
---------------------------------------------------------

题目:分别输入两个整数以及一个加减乘除中的算术运算符,输出运算结果,
      若输入其它运算符,则退出程序;

例如:输出格式如下
【输入一个整数:】1
【输入另一个整数:】2
【输入+-*/算术运算符,其它字符结束:】+
1+2=3
【输入一个整数:】3
【输入另一个整数:】4
【输入+-*/算术运算符,其它字符结束:】-
3-4=-1
【输入一个整数:】5
【输入另一个整数:】6
【输入+-*/算术运算符,其它字符结束:】*
5*6=30
【输入一个整数:】7
【输入另一个整数:】8
【输入+-*/算术运算符,其它字符结束:】/
7/8=0.875
【输入一个整数:】9
【输入另一个整数:】0
【输入+-*/算术运算符,其它字符结束:】=
>>> 

---------------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数main和其它函数中的
      任何内容,仅在函数的注释标志之间填入所编写的若干语句。
------------------------------------------------------'''
def main():
    while True:
        x=int(input("【输入一个整数:】"))
        y=int(input("【输入另一个整数:】"))
        op=input("【输入+-*/算术运算符,其它字符结束:】")
    #********** Program **********
        oper=('+','-','*','/')
        if op not in oper:
            break
        dict1={'+':x+y,'-':x-y,'*':x*y,'/':x/y}
        print("{}{}{}={}".format(x,op,y,dict1.get(op)))       
    #********** End **********    
        
        
if __name__ == '__main__':
    main()