Swift语言基础小习题(包含答案)-只适合菜鸟.
来源:互联网 发布:免费流量控制软件 编辑:程序博客网 时间:2024/05/21 14:09
1、编写一个程序,要求可以把一个字符串中的每一个字符,如果是大写字母变小写字母,如果是小写字母变大写,如果是其他字符不变!
例如:字符串China23beiJing经过程序转换为cHINA23BEIjING
2、编写一个程序,要求接收一个数字,程序会将这个数字以二进制方式打印,例如:数字10,以1010的方式打印出来
3、编写一个程序,判断101-200之间有多少个素数,并输出所有素数.
4、编写一个程序,查看1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
5、编写一个程序,能交换两个变量的数值
例如:变量a值为20,变量b值为30,调用函数后,a的值变为30,b的值变为20
6编写一个程序,求1! + 2! + 3! + 4!的和
要求:使用嵌套定义函数实现
7、古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
8、打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方
答案:
(1)
func changeCharacter(chNum:Character) ->Character {
//将字符转换为整数
var chStr =String(chNum) //将字符转换为字符串
var num:UInt32 =0 //用于接受字符整数的变量
for itemin chStr.unicodeScalars {
num = item.value //循环只执行一次,获取字符的整数值
}
/*
如果是大小写字母,转换数值
*/
if num >=65 && num <=90{
num += 32
}
//如果是小写字母,转换为大写
else if num >= 97&& num <= 122 {
num -= 32
}
/*
将整数转换为字符
*/
let newChNum =Character(UnicodeScalar(num)!)
return newChNum
}
var string = "chinanFejfd#76Njwbjf"
var i = 0//表示偏移量
while i <string.characters.count {//循环条件,包含循环变量的终止值
var ch =string[string.index(string.startIndex, offsetBy: i)]
string.replaceSubrange(string.index(string.startIndex, offsetBy: i)...string.index(string.startIndex, offsetBy: i), with: String(changeCharacter(chNum: ch)))
i +=1 //循环变量值变化
}
print(string)
func binaryPrIntNumber(num:Int) { //定义一个数组
var remainderArr:[Int] = [] //int数组,存储余数
var quotient:Int = num //表示商的变量,初始值是num
while quotient > 0 { //商的终值是 0
let remainderNum = quotient % 2 //取余
remainderArr.insert(remainderNum, at: 0) //插入数组中
quotient /= 2 //商变化
}
for item in remainderArr {
print(item, terminator:"")
}
print("")
}
var a = 10
binaryPrIntNumber(num: a)
(3).
var isPreimNum = true
for l in101...200 { //遍历101-200中的任意数字
for jin 2..<l-1 {//判断的条件
if l%j ==0 {
isPreimNum =false
break
}
}
if isPreimNum {//如果是素数
print(l)//打印这个素数
}
isPreimNum =true
}
for hudder in1...4 {
for tenin 1...4 {
for numin 1...4 {
if hudder != ten&& hudder != num && ten != num {
print(hudder*100+ten*10+num)
}
}
}
}
(5)
func swap(a: inoutInt , b:inoutInt){
let temp = a
a = b
b = temp
}
var x = 20 , y =30
swap(a:&x , b:&y)
print(x,y)
func getsun(number:Int) ->Int {
//求某个数的阶乘
func get(num:Int)->Int {
var sun =1
for iin 1...num {
sun *= i
}
return sun
}
var total =0
for Itemin 1...number {
total += get(num: Item)
}
return total
}
print(getsun(number:4))
func fibonacci(n:Int)->Int{
if n==1|| n==2 {
return1
}
returnfibonacci(n: n-1)+fibonacci(n: n-2)
}
for index in1...30 {
print("第\(index)天的值:\(fibonacci(n: index))")
}
第一种
var i = 100
while i <999{
var c =i / 100//百位
var b = i / 10 %10 //十位
var a =i % 10 //个位
var abc = a*a*a + b*b*b + c*c*c //立方之和
if abc ==i {
print("水仙花三位数:\(abc)")
}
i += 1 //累加
}
8.2第二种
for number in100...999 {
var hunder = number /100
var ten = number /10 % 10
var num = number %10
var sum =pow(Decimal(hunder),3)+ pow(Decimal(ten),3)+ pow(Decimal(num),3 )
if sum== Decimal(number) {
print(number)
}
}
- Swift语言基础小习题(包含答案)-只适合菜鸟.
- C语言基础习题及答案1
- C语言基础习题及答案2
- C语言基础习题及答案3
- C语言基础习题及答案4
- C基础语言习题及答案5
- C语言基础习题及答案6
- C语言基础习题及答案7
- c语言习题及其答案
- Swift小练习(包括答案)
- Java小菜鸟之第一章习题1
- Java小菜鸟之第一章习题2
- C语言第三版课后习题答案
- 大学计算机基础书后习题答案(修改)
- Java基础习题(附答案)
- Swift 语言基础算法
- Swift -1 语言基础
- Swift语言基础
- 搭建Git服务器
- 1019. 数字黑洞 (20)
- Android进阶之路
- C#Json的解析与取值
- StringUtils源码
- Swift语言基础小习题(包含答案)-只适合菜鸟.
- (五)spring配置文件--使用外部属性文件
- Go实战--go语言操作PostgreSQL数据库(github.com/lib/pq)
- CF 873 B. Balanced Substring【map】
- 高并发后端设计-限流篇
- 前台传递Integer[] ids确保后台能准确接收
- What is the difference between arguments and parameters?
- iOS11 设置搜索栏取消按钮颜色
- ue4 character 物理测试