值得苦练的100道Python经典练手题,(附详细答案)建议收藏!
花了一周的时间,整理了100道Python的练习题,如果你是一位初学者,那么这一份练习题将会给你带来极大的帮助,如果你能够完全独立的完成这份练习题,你已经入门的Python了,练习题涵盖Python基础的大部分内容:
【PDF文末获取】
【PDF文末获取】
【程序 3】
题目:一个整数,它加上 100 后是一个完全平方数,再加上 268 又是一个完全平方数,请问该数是多少?
1.程序分析:在10万以内判断,先将该数加上100 后再开方,再将该数加上 268后再开方,如果开方后的结果满足如下条件,即是结果。请看具体分析:
2.程序源代码:
#include "math.h" main()
long int i,x,y,z;
for (i=1;i<100000;i++)
{x=sqrt(i+100); /*x 为加上 100 后开方后的结果*/
y=sqrt(i+268); /*y 为再加上 268 后开方后的结果*/
if(x*x==i+100&&y*y==i+268)/*如果一个数的平方根的平方等于该数,这说明此数是完全平方数*/
printf("\n%ld\n",i);
import math
for i in range(10000):
#转化为整型值
x=int(math.sqrt(i+100)) y= int(math.sqrt(i+ 268))
if(x * x == i+ 100) and (y*y == i + 268):
print i
【PDF文末获取】
【PDF文末获取】
【程序 4】
题目:输入某年某月某日,判断这一天是这一年的第几天?
1.程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。
2.程序源代码:
year = int(raw _input('year: n'))
month = int(raw_input('month: \n'))
day = int(raw_input('day:\n'))
months = (0,31,59,90,120,151,181,212,243,273,304,334)
if 0 <= month <= 12:
sum = months[month - 1]
else:
print 'data error' sum += day
leap = 0
if (year % 400 == 0) or ((year % 4 == 0) and (year % 100 != 0)):
leap = 1
if (leap == 1) and (month > 2):
sum += 1
print 'it is the %dth day.' % sum
【PDF文末获取】
【PDF文末获取】
【程序 96】
题目:计算宇符串中子串出现的次数
1.程序分析:
2.程序源代码:
if name_
==1
_main ':
str1 = raw_input(input a string: \n')
str2 = raw_input(input a sub string: \n')
ncount = str1.count(str2)
print ncount
【程序 97】
1.程序分析:
2.程序源代码:
题目:从键盘输入一些字符,逐个把它们送到磁盘上去,直到输入一个#为止。
if name ==' main_
from sys import stdout
filename = raw input('input a file name: (n')
fp = open(filename, "w")
ch = raw_input(input string:\n")
while ch != '#':
fp.write(ch)
stdout.write(ch)
ch = raw_input(")
fp.close()
由于篇幅限制就不一一展示了,完整版值得苦练的100道Python经典练手题PDF已经打包完毕,需要的伙伴下图