北民大C语言练习题

上传人:tia****nde 文档编号:36858287 上传时间:2018-04-03 格式:DOC 页数:9 大小:36.50KB
返回 下载 相关 举报
北民大C语言练习题_第1页
第1页 / 共9页
北民大C语言练习题_第2页
第2页 / 共9页
北民大C语言练习题_第3页
第3页 / 共9页
北民大C语言练习题_第4页
第4页 / 共9页
北民大C语言练习题_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《北民大C语言练习题》由会员分享,可在线阅读,更多相关《北民大C语言练习题(9页珍藏版)》请在金锄头文库上搜索。

1、1. 数据类型数据类型a.输入一个小数点后有多位数字的小数,实现将其保留三位小数,并输出;(3.14159 3.142, 10.123456 10.123) b.输入一个 4 位整数,求其得各位数字的平方和;(1234 1+4+9+16=30). c.定义字符型变量 ch,写出六种给 ch 赋值字符A的代码; d.编写程序输出 26 组大小写字母;(AaBbCc.XxYyZz) e.定义浮点型变量 f1、f2,为 f1 赋值 10 的-30 次,为 f2 赋值 10 的 30 次 f.定义一个单精度浮点型变量 f 和一个双精度浮点型变量 d,为 f 和 d 都赋值 3.141592653589

2、79323846264338327950288,输出 f 和 d 得值,要求保留 20 位小数, 观察输出结果; g.输入华氏温度求摄氏温度。转换公式为 c=5/9(f-32) ,输出结果取两位小数。2. 分支结构分支结构a.输入三角形得三个边的边长,以此判断能否组成三角形,是什么形状的三角形;(等 边三角形、等腰三角形、直角三角形、等腰直角三角形、一般三角形) b.输入一个年份值,判断是否为闰年; c.输入 a、b、c 三个整型变量,分别使用 if 语句和条件运算符求出三个数的最大值和最 小值; d.输入任意实数,求出其所对应的函数值(调用数学函数库) 。 z=e 的 x 次幂(x10) z

3、=log(x+3) (x-3) z=sin(x)/(cos(x)+4) e.输入一个成绩,输出此成绩对应的级别;(优、良、中、及格、不及格) ,要求分别使 用 if 语句和 switch 语句; f.判断一个字符是否为字母或者数字; g.使用条件运算符实现让 c 等于 a、b 中较大的,d 等于 a、b 中较小的,e 等于 a 的绝对 值。 h.读入一元二次方程的三个系数,a,b,c,求出各种情况下方程的根,无解或输入数据不 正确输出提示信息3. 循环结构循环结构a.编写程序实现 1+2+3+4+.+n,n 由用户输入; b.修改程序 1,实现 1+3+5+7+9+.2*n-1; c.修改程序

4、 1,实现 2+4+6+8+10+.2*n; d.修改程序 2,实现 1+1/3+1/5+1/7+.1/(2*n-1); e.修改程序 4,实现 1-1/3+1/5-1/7+.1/(2*n-1); f.编程实现 1*2*3*4*5*.n; g.编程实现 输入 n,判断 n 是不是质数; h.求 sum=d+dd+ddd+dd.d(n 个 d),其中 d 为 1-9 的数字,d 和 n 输入。 i.用一元五角钱兑换人民币 5 分、2 分和 1 分的硬币(要求每种至少有一个)共 100 枚, 请输出每种具体的兑换方案以及共有多少种方案。 j.编程输出下三角式的九九乘法表. k.输出斐波那契数列的前

5、 20 项,该数列的前两项都是 1,以后各项是前两项之和。 l.实现 1!+2!+3!.+n!,n 由用户输入; m.实现 1+(1+2)+(1+2+3)+(1+2+3+4)+.+(1+2+3+4.+n) ,n 由用户输入; n.求 1 到 100 之间的偶数之积; o.输入 n 和 m,求出他们的最大公约数和最小公倍数; p.在屏幕上输出以下图形,要求使用循环嵌套实现 1. * * * * * * * * * * * * * * * * * * * * * * * * *2. * * * * * * * * * * * * * * *3. * * * * * * * * * * * * *

6、* * 4. * * * * * * * * * * * * *5.* * * * * * * * * * * *6.* * * * * * * * * * * * * * * *4. 函数调用函数调用a.编写一个函数,返回一个整数的绝对值.; b.编写一个函数,判断一个整数是否为素数,如果是则返回 1,否则返回 0.; c.编写一个函数,找出一个大于给定整数且紧随这个整数的素数。 d.通过调用素数函数,实现求出 1000 以内所有素数的和; e.通过调用素数函数,验证哥德巴赫猜想在 10000 以内有效; f.编写一个函数,求一个整型数的各位数字的立方和; g.编写函数 fun 计算并返回分

7、段函数的值: x2+x+6 x0 且 x-3 f(x)= x2-5x+6 0x10 且 x2 及 x3 x2-x-1 其它 h.编写一个函数,用递归法求阶乘; i.编写一个函数,用递归法求 fibonacci 数列的的前 n 项,n 为形参; j.编写一个函数,在函数中定义一个静态局部变量 count,统计该函数被调用的次数; k.编写一个函数,参数为整型 n,输出 n 行的菱形;例如 n=7,则图形为* * *5. 一维数组一维数组a.建立一个整型数组,在定义数组的时候为数组初始化任意 10 数字,体会初始化的用法;a)建立一个长度为 10 的一维整型数组,提示用户为数组输入数据; b)求出

8、数组的最大值、平均值; b.将数组分别使用选择排序法和冒泡排序法排序,并输出排序后的数组; c.建立一个字符数组,将 26 个小写字母保存到数组中,并逆序输出; d.用数组保存 fibonacci 数列的前 20 项;6. 二维数组二维数组a.建立一个 5 行 5 列的二维数组,提示用户输入数组的值,分别按照先行后列和先列后 行的顺序输入相同值;将数组显示到屏幕上,按矩阵显示;观察两种读入顺序的不同;b.求出二维数组的主对角线之和、副对角线之和; c.求出数组的上三角的平均值和下三角的平均值; d.求出矩阵的周边元素之和; e.判断矩阵是不是上三角矩阵;判断矩阵是不是下三角矩阵; f.将矩阵转

9、置,输出转置后的矩阵; g.建立一个二维数组,将九九乘法表保存到数组中并且输出出来; h.建立一个二维数组,数组的第一行保存 26 个小写字母,第二行保存 26 个大写字母; i.建立二维数组 a43,并为数组输入值,求出数组每行的最大值保存到数组 b4中,求 出数组每列的最大值,并保存到数组 c3中;7. 字符串字符串a.输入一个字符串,以回车作为结束标志,并将字符串输出出来; b.输入一个字符串,再输入一个字符,统计该字符在字符串中出现的次数; c.输入一个字符串,统计字符串中字母、数字、空格出现的字数; d.输入一个字符串,再输入一个字符,然后将该字符在字符串出现的第一个删除掉,输 出删

10、除后的字符串; e.输入一个字符串,再提示用户输入两个整型值 n、m,要求将字符串第 n 个字符开始, 删除 m 个字符,输出删除后的字符串; f.输入一个字符串,再提示用户输入一个字符 x,和一个整型值 n,要求 n 小于字符串的 长度,将 x 插入到下标为 n 的位置,输出插入后的字符串; g.提示用户输入两个字符串保存到字符数组 str1 和 str2 中,再输入一个整型值 n,将 str2 代表的字符串插入到 str1 中下标为 n 的位置,输出插入后的字符串; h.输入一个字符串,将字符串逆序,输出逆序后的字符串; i.已有两个字符串,分别保存在字符数组 str180和 str23中

11、,统计在 str1 保存的字符串 中 str2 保存的字符串出现了多少次;(str2 中的字符串长度为 2) j.输入一个字符串,以回车作为结束标志,然后将字符串中的字符排序(依照 ASCII 码 的大小由低到高) ,并将排序后的字符串输出出来;8. 指针和函数指针和函数a.编写函数实现 void func(int a,int b,int c,int *pmax,int *pmin,float *pavg) ,求出 a,b,c 的最大值和最小值、平均值通过指针返回; b.编写函数 void swap(int *x , int *y) 交换想 x 和 y 指向变量的值; c.编写函数 int a

12、Sum(int *a ,int n) 求出 a 所指向数组的前 n 项的和; d.编写函数 void cpyStr(char *stra,char *strb),将字符串 strb 复制给 stra 所指向的空间; e.编写函数 void catStr(char *stra,char *strb),将字符串 strb 连接到 stra 所指向的字符串的 后面; f.编写函数 int cmpStr(char *stra,char *strb),将字符串 strb 和 stra 进行比较; g.编写函数 void insert(char *stra,char ch,int n),将将字符 ch 插

13、入到字符串 stra 中第 n 个 位置; h.编写函数 int lenStr(char s),求字符串的长度; i.编写函数 int findCh(char *str , char ch),找出字符 ch 在字符串 str 中出现的第一个位置;编写函数 void func(char *str),将 str 所指向字符串中的所有大写字母全变成小写字母;j.编写函数 int func(char *str),将字符串中所有的数字字符删除掉,并将新生成的字符串 的长度作为返回值;比如 “abc123xyz” 过滤后 “abcxyz”返回值为 6 k.编写函数 void findCh(char *st

14、r , char ch),判断字符 ch 是否与 str 所指串中的某个字符相同; 若存在相同,什么也不做,若不同,则将其插在串的最后。 l.编写函数 int func(int n),函数返回值为 sum=1+1+2+1+2+3+1+2+3+4+.+1+2+3+4+.+n m.编写函数 int func(int a,int n,int b),将 b 插入到一个已按降序排好的数组 a 中,a中现在有 n 个元素,要求插入后的数组仍然是降序的;n.请编写函数 void fun(char *str),对字符串,按降序排列。例如:原来的字符串为CEAedcab,排序后输出为 edcbaECA。o.请编

15、写函数 void fun(char *s,char *t) ,将 s 所指字符串的正序和反序进行连接,形成一个新串放在 t 所指的数组中。例如:当 s 串为“ABCD“时,则 t 串的内容应为“ABCDDCBA“。 p.9. 算法补充算法补充a.有 n 个人围成一圈,顺序排号。从第一个人开始报数(从 1 到 4 报数) ,凡报到 4 的人退出圈子,问最后留下的是原来第几号的那位。 (建议用链表实现)b.读入一个英文文本行,将其中每个单词的第一个字母改成大写,然后输出此文本行 (这里的“单词”是指由空格隔开的字符串) 。例如:若输入:“i am a student to take the examination.” ,则应输出:“I Am A Student To Take The Examination.” 。c.有 n 个整数,使其前面各数顺序向后移 m 个位置,最后 m 个数变成最前面的 m 个数。d.给定 n 个实数,输出平均值,并统计在平均值以下(含平均值)的实数个数。e.将一个正整数分解质因数。例如:输入 90,打印出 90=2*3*3*5f.打印出杨辉三角形(要求打印出 10 行)g.求广义菲玻那契级数的第 n 项。广义菲玻那契级数的前 n 项为: 1,1,1,3,5,9,17,31, h.例如:若 n = 15,则应输出:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号