C语言中有有许多经典的算法,这些算法都是许多人的智慧结晶,也是编程中常用的算法,这里面包含了众多算法思想,掌握这些算法,对于学习更高级的、更难的算法都会有很大的帮助,会为自己的算法学习打下坚实的基础。
1.输出9*9乘法口诀。
2.古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
(兔子的规律为数列1,1,2,3,5,8,13,21…)这也是著名的斐波那契数列。
3.1-100之间有多少个素数,并输出所有素数及素数的个数。
4.一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6 = 1+2+3, 找出10000以内的所有完数。
5.下面程序的功能是将一个4×4的数组进行逆时针旋转90度后输出,要求原始数组的数据随机输入,新数组以4行4列的方式输出。
6.编程打印杨辉三角。
7.实现将输入的字符串反序输出。
8.实现字符串拷贝函数strcopy(charsrc,char dest)
9.求近似Pi值。可以用公式(如:pi/2 = 1+1/3+1/32/5 + 1/32/53/7 + 1/32/53/74/9+…)
10.输入一个字符串,判断其是否为回文。回文字符串是指从左到右读和从右到左读完全相同的字符串。
11.判断某一年是否是闰年。
12.获得某年、某月的最大天数。
13.输入某年某月某日,判断这一天是这一年的第几天?
14.求一个数的阶乘。
15.打印出三位的"水仙花数",所谓"水仙花数"是指一个N位数,其各位数字立方和等于该数。
16.不依赖第三个变量,实现两个整数交换。
18.将10进制的数转换为2-16进制。
19.将一个正整数分解质因数。例如:输入90,打印出90=233*5。
20.猴子吃桃问题:
猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
21.两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。
22.打印出如下图案(菱形)
23.有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的前20项之和。
24.求1+2!+3!+…+20!的和
25.利用递归方法求5!。
26.利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。
27.有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?
28.给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
29.一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
30.有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
31.输入某年某月某日,判断这一天是这一年的第几天?
32.输入三个整数x,y,z,请把这三个数由小到大输出。
33.打印出如下图案(菱形)
*
***
******
********
******
***
*