Swift语⾔基础⼩习题(包含答案)-只适合菜鸟.
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 item in 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 < unt {//循环条件,包含循环变量的终⽌值
var ch = string[string.index(string.startIndex, offsetBy: i)]
i += 1//循环变量值变化
}
print(string)
(2)
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 200 {    //遍历101-200中的任意数字
for j in2..<l-1 {//判断的条件
if l%j == 0 {
isPreimNum = false
break
}
}
if isPreimNum {//如果是素数
print(l) //打印这个素数
}
isPreimNum = true
(4)
for 4 {
for 4 {
for 4 {
if hudder != ten && hudder != num && ten != num {
print(hudder*100+ten*10+num)
}
}
}
}
(5)
func swap(a: inout Int , b:inout Int){
let temp = a
a = b
b = temp
}
var x = 20 , y = 30
swap(a:&x , b:&y)
print(x,y)
(6)
func getsun(number:Int) ->Int {
//求某个数的阶乘
func get(num:Int)->Int {
var sun = 1
for um {
sun *= i
}
return sun
}
var total = 0
for umber {
total += get(num: Item)
}
return total
}
print(getsun(number: 4))
(7)
func fibonacci(n:Int)->Int{
if n==1|| n==2 {
return1
}
swift语言怎么样return fibonacci(n: n-1)+fibonacci(n: n-2)
}
for 30 {
print("第\(index)天的值:\(fibonacci(n: index))")
}
(8)
第⼀种
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 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)
}
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。