golang99道练习题- 专栏- Go语言中文网- Golang中文社区

文章推薦指數: 80 %
投票人數:10人

** **2.程序分析:关键是计算出每一项的值。

** **3.程序源代码: ** ```go package main import "fmt" func main() { var m, n, Sn, Tn = ... 首页 专栏 golang99道练习题 收录了20篇文章·33人关注 投稿 关注 最新收录 最新评论 hdking golang99道练习题之18 **1.题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。

例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。

** **2.程序分析:关键是计算出每一项的值。

** **3.程序源代码:** ```go packagemain import"fmt" funcmain(){ varm,n,Sn,Tn=1,1,0,0 fmt.Print("请输入一个数字:"... 1701 1 0 hdking golang99道练习题之20 **1.题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?** **2.程序源代码:** ```go packagemain import"fmt" funcmain(){ sn:=100 hn:=sn/2 fori:=2;i<=10;i++{ sn+=2*hn hn/=2 } fmt.Printf("共经过%d... 2093 2 0 hdking golang99道练习题之05 **1.题目:输入三个整数x,y,z,请把这三个数由小到大输出。

** **2.程序分析:我们想办法把最小的数放到x上,** **先将x与y进行比较,如果x>y则将x与y的值进行交换,** **然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。

** **3.程序源代码:** ```go packagemain import( "fmt" ) funcmain(){ varx,y,z,tempfloat6... 2784 1 0 hdking golang99道练习题之22 **1.题目:两个乒乓球队进行比赛,各出三人。

甲队为a,b,c三人,乙队为x,y,z三人。

已抽签决定比赛名单。

有人向队员打听比赛的名单。

a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。

** **2.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

** **3.程序源代码:** ```go packagemain import"fmt" funcmain(){ for... 2974 1 0 hdking golang99道练习题之14 **1.将一个正整数分解质因数。

例如:输入90,打印出90=2*3*3*5。

** **2.程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:** (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。

(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。

(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。

**3.程序源代码:** ```... 1774 1 0 hdking golang99道练习题之02 **题目:企业发放的奖金根据利润提成。

** **利润(I)低于或等于10万元时,奖金可提10%;** **利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;** **20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;** **60万到100万之间时,高于60万元的部分,可提成1.5%;** **高于100万元时,超过100万元的部分按1%提成从键盘输入当月利... 2484 0 0 hdking golang99道练习题之04 **1.题目:输入某年某月某日,判断这一天是这一年的第几天?** **2.程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,** **特殊情况,闰年且输入月份大于3时需考虑多加一天。

** **3..程序源代码:** ```go packagemain import"fmt" funcmain(){ varyear,mouth,day,sum,febint fmt.Println("请输入年月日:")... 2143 0 0 hdking golang99道练习题之06 **1.用*号输出字母C的图案。

** **2.程序分析:可先用'*'号在纸上写出字母C,再分行输出。

** **3.程序源代码:** ```go packagemain import"fmt" funcmain(){ fmt.Printf("*****\n") fmt.Printf("*****\n") fmt.Printf("****\n") fmt.Printf("**\n") fmt.Printf("**\n")... 1999 0 0 hdking golang99道练习题之07 **1.题目:输出特殊图案,请在c环境中运行,看一看,VeryBeautiful!** **2.程序分析:字符共有256个。

不同字符,图形不一样**  **3.程序源代码:** ```go packagemain import"fmt" funcmain(){ vararune=176 varbrune=219 fmt.Printf("%c%c%c%c%c\n",b,a,a,a,b) fmt.Printf("%... 2240 0 0 hdking golang99道练习题之08 **1.输出9*9口诀。

** **2.程序分析:分行与列考虑,共9行9列,i控制行,j控制列。

** **3.程序源代码:** ```go packagemain import"fmt" funcmain(){ fori:=1;i<10;i++{ forj:=1;j<10;j++{ result:=i*j fmt.Printf("%d*%d=%-3d",i,j,result) ... 1803 0 0 hdking golang99道练习题之09 **1.题目:要求输出国际象棋棋盘。

** **2.程序分析:用i控制行,j来控制列,根据i+j的和的变化来控制输出黑方格,还是白方格。

** **3.程序源代码:** ```go packagemain import"fmt" funcmain(){ fori:=0;i<8;i++{ forj:=0;j<8;j++{ if(i+j)%2==0{ fmt.Printf("%c%c",219,... 1742 0 0 hdking golang99道练习题之10 **1.打印楼梯** **2.程序分析:用i控制行,j来控制列,j根据i的变化来控制输出黑方格的个数。

** **3.程序源代码:** ```go packagemain import"fmt" funcmain(){ fori:=1;i<11;i++{ forj:=1;j<=i;j++{ fmt.Printf("%c%c",219,219) } fmt.Println() }... 1764 0 0 hdking golang99道练习题之11 **1.古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,** **小兔子长到第三个月后每个月又生一对兔子,** **假如兔子都不死,问每个月的兔子总数为多少?** **2.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....** **3.程序源代码:** ```go packagemain import"fmt" funcmain(){ f1:=1 f2:=1 fori:=1;i<=20;... 2090 0 0 hdking golang99道练习题之01 **1.题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?** **2.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。

组成所有的排列后再去掉不满足条件的排列。

** **3.程序源代码:** ```go packagemain import"fmt" funcmain(){ fori:=1;i<5;i++{ forj:=1;j<5;j++{ fork:=1;k... 2655 0 0 hdking golang99道练习题之12 **1.判断101-200之间有多少个素数,并输出所有素数。

** **2.程序分析:判断素数的方法:用一个数分别去除2,如果能被整除,则表明此数不是素数,反之是素数。

** **3.程序源代码:** ```go packagemain import"fmt" funcmain(){ fori:=101;i<=200;i++{ forj:=2;j<=i;j++{ ifi!=j&&i%j... 1715 0 1 hdking golang99道练习题之13 **1.打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。

** **例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。

** **2.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。

** **3.程序源代码:** ```go packagemain import"fmt" funcmain(){ fori:=1;i<10;i++{ ... 1754 0 0 hdking golang99道练习题之15 **1.利用条件运算符的嵌套来完成此题:** **学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。

** **2.程序分析:(a>b)?a:b这是条件运算符的基本例子。

** **3.程序源代码:** **不支持这个运算符** ```go packagemain import"fmt" funcmain(){ varscoreint vargradestring fmt.Print("请输入你... 1711 0 0 hdking golang99道练习题之21 **1.题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。

以后每天早上都吃了前一天剩下的一半零一个。

到第10天早上想再吃时,见只剩下一个桃子了。

求第一天共摘了多少。

** **2.程序分析:采取逆向思维的方法,从后往前推断。

** **3.程序源代码:** ```go packagemain import"fmt" funcmain(){ varx,yint y=1... 2435 0 0 hdking golang99道练习题之24 **1.题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。

** **2.程序分析:请抓住分子与分母的变化规律。

** **3.程序源代码:** ```go packagemain import"fmt" funcmain(){ vara,b,c=2.0,1.0,0.0 forn:=1;n<21;n++{ c=c+a/b t:=a a=a+... 2049 0 1 hdking golang99道练习题之25 **1.题目:求1+2!+3!+...+20!的和** **2.程序分析:此程序只是把累加变成了累乘。

** **3.程序源代码:** ```go packagemain import"fmt" funcmain(){ vara,b=1,0 fori:=1;i<21;i++{ a=a*i b=b+a fmt.Printf("第%d个值是:%d\n",i,b) } fmt.Pri... 3560 0 0  专栏公告  管理员 hdking 创建者  关注的人(33) × 给该专栏投稿 写篇新文章 每篇文章有总共有5次投稿机会 × 收入到我管理的专栏 新建专栏 X 登录和大家一起探讨吧 用户名 密码 记住登录状态 登录 GitHub登录 忘记密码? 还不是会员现在注册



請為這篇文章評分?