C++循环结构

1、排序

ab交换

int t = a;
a = b;
b = t;//ab交换
 

2、斐波那契数列

求斐波那契数列的第n项。f(1)=1, f(2)=1, f(3)=2, f(n)=f(n-1) + f(n-2)。

f(1)=a    f(2)=b   f(3)= f(1) + f(2)

c = a + b

a = b

b = c


3、 判断质数

判断一个数n是不是质数,要看n能不能被2~n-1的数整除。

i 循环n-1次

if可以整除,就break 输出不是质数

1  n%2

2  n%3

3  n%4

...   ...

n-2  n%n-1

参考思路:可以先定义一个bool变量为true,判断为true输出yes,判断为false输出no


 4、求1~100中所有偶数的和

1~100

先定义一个sum

i循环100次判断n是不是偶数,如果是的话sum+=n


 5、打印1~100中所有的质数(多重循环)

思路:判断一个数n是不是质数,就是要看这个数能不能被2~n-1的数整除,如果不能就是质数。

外循环决定是哪一个数,内循环判断这个数是不是质数。

当判断一个数具不具有某个特性时,可以定义一个bool变量。满足条件为true,不满足条件为false


6、输入一个n,打印n阶菱形,n是奇数。

曼哈顿距离:|x1-x2|+|y1-y2|

43234
32123
21012
32123
43234

5阶菱形:小于等于2的地方为*,大于2的地方为空格

n阶菱形:小于等于n/2的地方为*,大于n/2的地方为空格


7、输入一个整数X,输出1到X之间(包括1和X)的全部奇数。

思路:初始值为1,奇数就是i每次加2


8、输入六个数字,他们要么是正数,要么是负数。统计正数的个数。

思路:循环i表示判断次数,cnt表示正数个数


 9、给定两个正数X和Y,输出它们之间(不包括X和Y)的所有奇数的和。


10、给定100个数,请你找出其中最大的数字,以及他的输入位置(位置从1开始)

思路:输入一个值,跟最大值进行比较,如果比最大值大就领最大值等于这个值。


11、 读取一系列的整数x,对于每个x,输出一个1,2,3,....x的序列。

先输入一个x,再判断x是不是0

cin >> x是有返回值的,如果返回值为0,不成立。

用逗号隔开的表达式被称为逗号表达式,逗号表达式的值等于最后一个数的值。 只在逻辑表达式中成立。

 scanf的写法:

scanf() != -1等价于~scanf()

 这几种形式是等价的。


12、读入两个整数,计算从A开始的N个连续整数的和。注意,如果读入的N为0或负数,则继续读取数字直至读入N为正整数为止。


13、输入两个整数N和M,构造一个N行M列的数字矩阵,矩阵中的数字从第一行到最后一行,按从左向右的顺序依次为1,2,3...N*M。矩阵构造完成后,将每行的最后一个数字变为PUM。输出最终矩阵。

思路:输出一个矩阵,双重循环,外循环i是循环每行,内循环j是循环每个数的位置,k是确定每个数的值。


14、余数

输入一个整数N,按顺序输出1到10000之间(不包括1和10000)的所有除以N余2的数字。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值