编程题 练练手

 

1.题目描述

计算字符串最后一个单词的长度,单词以空格隔开。 

输入描述:

一行字符串,非空,长度小于5000。

输出描述:

整数N,最后一个单词的长度。

示例1 输入hello world 输出 5
--------------------------------------------------------------------------------------------------------
 a=input()
b=a.split(' ')[-1]
print(len(b))
------------------------------------------------------------------------------------------------------

2.题目描述

写出一个程序,接受一个有字母和数字以及空格组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。

输入描述:

输入一个有字母和数字以及空格组成的字符串,和一个字符。

输出描述:

输出输入字符串中含有该字符的个数。

示例1

输入

ABCDEFA

输出

1
-----------------------------------------------------------------------------------------------------------------------
a=input()  
b=input()
t=0
for i in a.lower():   
    if(i==b.lower()):
        t=t+1
print(t)
#不知道为什么不能输入中文字符,做题的时候还是好好的小心一下吧  本地使用的方法:
a=input('请输入字符串:')
b=input('一个字母:')
t=0
for i in a.lower():
    if(i==b.lower()):
        t=t+1
print(t)
------------------------------------------------------------------------------------------------------

3.题目描述 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作。

 

 

Input Param 

     n               输入随机数的个数     

 inputArray      n个随机整数组成的数组 

     

Return Value

     OutputArray    输出处理后的随机整数

 


注:测试用例保证输入参数的正确性,答题者无需验证。测试用例不止一组。


 

 

输入描述:

输入多行,先输入随机整数的个数,再输入相应个数的整数

输出描述:

返回多行,处理后的结果

示例1

输入

11102040326740208930040015

输出

10152032406789300400
---------------------------------------------------------------------------------------------------------------------------- 
import sys
while True:
    try:
        str=[]
        n=int(sys.stdin.readline().strip())
        for i in range(n):
            str.append(int(sys.stdin.readline().strip()))
        str.sort()
        a=[]
        for i in str:
            if i not in a:
                a.append(i)
        for i in a:
            print (i)
    except:
        break
-----------------------在自己电脑上这个也正确  但是输入测试集中是错误的  不知道什么原因
a=int(input('请输入随机数的个数:'))
t=1
b=[]
while(a):     
    a=a-1
    m=int(input('请输入整数:'))
    b.append(m)  
b = sorted(b)
c=[]
for i in b:
    if  i not in c:
        c.append(i)
for i in c:
    print(i)
------------------------------------------------------------------------------------------------------  

4.题目描述

•连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组; 
•长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。 

输入描述:

连续输入字符串(输入2次,每个字符串长度小于100)

输出描述:

输出到长度为8的新字符串数组

示例1

输入

abc123456789

输出

abc000001234567890000000

5.题目描述

写出一个程序,接受一个十六进制的数值字符串,输出该数值的十进制字符串。(多组同时输入 )

输入描述:

输入一个十六进制的数值字符串。

输出描述:

输出该数值的十进制字符串。

示例1

输入

0xA

输出

10
 

------------------------------------------------------------------------------------------------------

 

while True:

    try:

        a=input("请输入一个十六进制的数值字符串:")

        b=int(a,16)

        print(b)   

    except:

        break
----------------------------------------------------------------------------------------------------- 

6.题目描述

 

功能:输入一个正整数,按照从小到大的顺序输出它的所有质数的因子(如180的质数因子为2 2 3 3 5 )

最后一个数后面也要有空格
 

详细描述:


函数接口说明:

public String getResult(long ulDataInput)

输入参数:

long ulDataInput:输入的正整数

返回值:

String

 

 

输入描述:

 

输入一个long型整数

输出描述:

 

按照从小到大的顺序输出它的所有质数的因子,以空格隔开。最后一个数后面也要有空格。

示例1

输入

 

180

输出

2 2 3 3 5
-------------------------------------------------------------------------------------------------
a=int(input("请输入一个正整数:"))

i=2

t=''

while(a!=1):

    if(a%i==0):

        a=a/i 

        t=t+str(i)+' '

    else:

        i=i+1

print(t)
niuke ceshi daima:

while True:

    try:

        a=int(input())

        i=2

        t=''

        while(a!=1):

            if(a%i==0):

                a=a/i 

                t=t+str(i)+' '

            else:

                i=i+1

        print(t)            

    except:

        break

-------------------------------------------------------------------------------------------------------------------------------------

7. 题目描述

写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于5,向上取整;小于5,则向下取整。

输入描述:

输入一个正浮点数值

输出描述:

输出该数值的近似整数值

示例1

输入

5.5

输出

6
----------------------------------------------------------------------------------------------------------------------------------------------------------
while True:
    try:
        a=float(input())     #测试环境中不能写进去中文 所以这里的提示部分我全都舍弃了
        b=int(a+0.5)
        print(b)              
    except:
        break

-------------------------------------------------------------------------------------------------------------------------------------
8. 
题目描述

数据表记录包含表索引和数值,请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照key值升序进行输出。

输入描述:

先输入键值对的个数
然后输入成对的index和value值,以空格隔开

输出描述:

输出合并后的键值对(多行)

示例1

输入

40 10 21 23 4

输出

0 31 23 4
import sys
  
try:
  
    iterNum = int(sys.stdin.readline().strip())
    result = {}
    for i in range(iterNum):
        tempLine = []
        tempLine.extend((sys.stdin.readline().strip().split(' ')))
        tempLine = [int(k) for k in tempLine]
        # print tempLine
        if tempLine[0] in result.keys():
            result[tempLine[0]] += tempLine[1]
        else:
            result[tempLine[0]] = tempLine[1]
    for i in result.keys():
        print( str(i) + ' ' + str(result[i]))
except:
    pass

-------------------------------------------------------------------------------------------------------------------------------------

9. 题目描述

输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。

输入描述:

输入一个int型整数

输出描述:

按照从右向左的阅读顺序,返回一个不含重复数字的新的整数

示例1

输入

9876673

输出

37689  
----------------------------------
        m=""
        
        a= input("输入一个int型整数:")
 
        t = a[::-1] #逆序
        print(t)
        for i  in t:
            if i not in m:
                m=m+i 
        print(m)  

--------------------------------------------------------------------------

10、题目描述

编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127)。不在范围内的不作统计。

输入描述:

输入N个字符,字符在ACSII码范围内。

输出描述:

输出范围在(0~127)字符的个数。

示例1

输入

abc

输出3
-------------------------------------------------
a=set(input()) #去重复的字符串
t=0
for i in a:
if (0< int(ord(i))<127):
t+=1
print(t)
  

----------------------------------------------------------------------------------------------------------------------------------

 
 

11、题目描述

输入描述:

 

输入一个int整数

输出描述:

 

将这个整数以字符串的形式逆序输出

示例1

输入1516000输出0006151 
--------------------------------------------------------------------------------------- 

 a=input()

t=a[::-1] #逆序输出

print(t)

----------------------------------------------------------------------------------------------------------------------------------

 
 

12、题目描述 

 

写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串。例如:

输入描述:

 

输入N个字符

输出描述:

 

输出该字符串反转后的字符串

示例1

输入

 

abcd

输出

dcba 

----------------------------------------------------------------------------------------------------------------------------------

13、题目描述

 

将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”
所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符


接口说明

/**
 * 反转句子
 * 
 * @param sentence 原句子
 * @return 反转后的句子
 */
public String reverse(String sentence);

 

 

 

输入描述:

 

将一个英文语句以单词为单位逆序排放。

输出描述:

 

得到逆序的句子

示例1

输入

 

I am a boy

输出

boy a am I 
------------------------------------------------------------------------

a=input()

 

t=a.split(' ')

#print(t)

 

m=' '.join(t[::-1])

print(m) 

-------------------------------------------------------------------------------------------------------------------------------------

题目描述

 

给定n个字符串,请对n个字符串按照字典序排列。

输入描述:

 

输入第一行为一个正整数n(1≤n≤1000),下面n行为n个字符串(字符串长度≤100),字符串中只含有大小写字母。

输出描述:

 

数据输出n行,输出结果为按照字典序排列的字符串。
示例1

输入

 

9captocatcardtwotooupboatboot

输出

 

boatbootcapcardcattotootwo 
--------------------------------------------------------------------------------------------------------
t=[]
a=int(input())
for i in range(a):    
    m=input()
    t.append(m)
 
#print(sorted(t)) 
for i in sorted(t):
    print(i)   
 
 
 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值