C程序设计编程题库
时间:2026-01-24
时间:2026-01-24
C程序设计编程题库 1. 输入两个整数A和B,将它们交换(即A的值给B,B的值给A)后输出A和B。
2. 输入三个整数A、B和C,将它们交换(即A的值给B,B的值给C,C的值给A)后输出A、B和C。
3. 输入1个三位正整数N,输出其个位、十位和百位。
4. 输入一个英文字符,输出其ASCII码。 1. 输入一个正整数,判断是奇数或偶数、负数或非负数。
2. 输入一个1-1000之间的数,判断是几位数。
3. 输入一个字符,判断是大写字母、小写字母、数字或其他。
4. 输入一个年份,判断是否为闰年。(凡是能被400整除的年份为闰年。如2000年;凡是不能被100整除,但能被4整除的年份为闰年。如2008年)
5. 已知三角形三条边的长度,求三角形的面积。
6. 已知一元二次方程的三个系数,求方程的根。
7. 输入三个整数,分别赋给X、Y、Z,然后按从小到大的顺序输出这三个变量的值。
8. 输入一个三位数,判断其是否为水仙花数。如153,因为153=13+53+33 1. 输入一个1至7之间的数字,输出星期日至星期六。
2. 输入一个月份,输出该月的天数。
1. 编写程序求sum=1+2+3+ +100的值(教科书例题)
2. 编写程序求10!=1*2*3* *10的值
3. 输入N,求N!=1*2*3* *N的值
4. 输入自然数N,输出N的位数。
5. 求满足条件1+2+3+…+N<100000的最大N。(教科书例题)
6. 求满足条件1+2+3+…+N>100000的最小N。
7. 输入一个整数,求它的各位数字之和。(教科书例题)
8. 采用欧几里得算法,求两个自然数的最大公约数。(教科书例题)
9. 求两个自然数的最小公倍数。
M与N的最小公倍数=M*N M和N的最大公约数
10. 输入一行字符,统计大写字母、小写字母、数字及其它符号的个数(实验15.3.3)
11. 用牛顿迭代法求方程2x3-4x2+3x-6=0在1.5附近的根。(教科书例题)
12. 用二分法求方程2x3-4x2+3x-6=0在区间[1,3]上的根。
13. 用二分法求方程x3-x4+4x2-1=0在区间[0,1]上的根。(实验15.3.5)
x2x3xn14. 输入x,求y x (n=1,2,3, ),当第n项小于等2!3!n!
于10-6时,停止累加。(实验15.3.6)
15. 输入一串字符文本,统计单词的个数。单词之间由1个或多个空格隔开。(实验15.3.7)
1. 输入N,输出1+2+3+…+N的值。
2. 输入N,输出N!(即N的阶乘)
3. 找出100~999之间的水仙花数。如407(教科书例题)
4. 输入一个自然数,判断其是否为素数。
方法1:统计因子个数
方法2:用break语句(教科书例题)
5. 输入一个自然数,判断其是否为回文数。
6. 输入一个自然数,判断其是否为升序数。如123
7. 输入一个自然数,判断其是否为完全数。
完全数:该数的因子(不包含本身)之和等于其本身。如28是完全数,因为28=1+2+4+7+14
8. 输入两个正整数M和N,求它们的最大公约数。
9. 输入两个正整数M和N,求它们的最小公倍数。
1. 输出1至10的阶乘,即1! 2! 3! … 10!
2. 找出2~100之间的素数。
3. 找出10000以内的水仙花数。
4. 找出100以内的完全数。
5. 找出100之内的所有勾股数。所谓勾股数是指满足条件a2+b2=c2(a<b) 如:3 4 5
6. 输出九九乘法表。(教科书例题)
1. 输入10个整数存入数组,找出其中的最大数及其位置。
2. 输入10个整数存入数组,找出其中的最小数及其位置。
3. 输入10个整数存入数组,找出其中的最大数和最小数以及它们位置。
4. 输入10个整数存入数组,求它们的平均值。
5. 输入10个整数存入数组,查找指定数是否存在。
6. 输入15个整数存入数组,将第1个数与第15个数交换、第2个数与第14个数交换 、第7个数与第9个数交换后输出。
7. 输入10个整数存入数组,将它们按从小到大排序。
(冒泡法、选择法、插入法)
8. 输入一个数据,统计其中含不同数字的个数。
如输入:1353.21
则输出:1:2个 2:1个 3:2个 5:1个
9. 输入一串英文字母,统计每个字母(不区分大小写)出现的次数。
如输入:Good
则输出:D:1个 G:1个 O:2个
10. 求裴波那契数列(1 1 2 3 5 8 13 21 34 )的前18项。
11. 输入10个数首尾相接,围成一圈,求出相邻的4个数之和(共20个),然后再找出哪4个数的和最大。
12. 输入10个整数存入一维数组,将数组中的数据循环左移一个位置。
如输入:1 2 3 4 5 6 7 8 9 10
则输出:2 3 4 5 6 7 8 9 10 1
13. 输入10个整数,将重复数去掉后输出。
如输入:1 3 5 2 1 5 6 8 1 4
则输出:1 3 5 2 6 8 4
14. 找出100以内的素数并按10个一行输出。
(实验16.1.5 因子法、习题5.5.1筛选法)
15. 报数问题。 1. 方阵的转置
2. 对一个4*4矩阵逆时针旋转90度。
3. 输入一个5*5的矩阵(#define N 5),求
(1)所有元素的和
(2)主、副对角线元素之和
(3)所有靠边元素之和
(4)内部元素之和
(5)最大值及最小值所在位置
4. 输入一个5*5的矩阵,将行和最大与最小的两行交换后输出。
5. 寻找M*N矩阵的“鞍点”。若存在,则输出鞍点的行号和列号;若不存在,则输出“鞍点不存在”。所谓鞍点是指一个在行中值最大,而列中值最小的元素。
上一篇:发票真伪辨别材料(第四稿)