C语⾔操作练习题1
练习⼀
1.⽐较两个整数的⼤⼩,并输出较⼤数。(1,2,2)
2.⽐较三个整数的⼤⼩,并输出较⼤数。(1,2,3,3)
练习⼆
1.实现下⾯的输出。
2.输⼊a、b、c的值,设2b-4ac>0且a 0,输出⼀元⼆次⽅程a2x+bx+c=0的实根,
并保留三位⼩数。(a=1,b=5,c=4 x=―1.000或―4.000)
3.已知三⾓形的两条边及其夹⾓,求第三边长度,要求结果为⼩数占三位的七位实数。(a
=3,b=4,α=90 c= 4.998)
练习三
1.铁路部门规定,⾏李托运时重量不超过50千克,按0.95元/千克计价,超过50千克,
超过部分按1.5元/千克计价。编程从键盘输⼊⾏李重量,计算并输出运费,要求结果保留两位⼩数。(w=10,p=9.50;w=60,p=62.50)
2.输⼊任意⼀个整数n,如果n是7的倍数,则输出该倍数;反之,输出n除以7的商和
余数。(n=7,商为1;n=17,商为2,余数为3)
3.输⼊⼀个年份,判断它是否为闰年。(400,闰年;4,闰年;100,⾮闰年)
4.根据输⼊的⼀个学⽣的成绩,输出成绩的等级(优秀、良好、中等、及格、不及格)。
成绩等级划分办法如下:优秀,90~100;良好,80~89;中等,70~79;及格,60~69;
不及格,0~59。(100,91,优秀;82,良好;73,中等;64,及格;59不及格)
5.根据平⾯上⼀点M(x,y)的坐标判断点M所在的象限。(1,2,⼀;1,-2,四;-
1,2,⼆;―1,―2,三)
6.从键盘上输⼊任意⼀个字符,如果它是⼤写字母,则把它转换成⼩写字母输出,否则不
做转化,直接输出。(A,a;a,a)
7. 某幼⼉园只收2~6岁的⼉童。2~3岁⼊⼩班,4岁⼊中班,5~6岁⼊⼤班。根据输⼊的
年龄,求应⼊的班级。
8. 将任意3个整数a 、b 、c 按从⼤到⼩的顺序输出。(2,4,1,4,2,1)
9. 在射击⽐赛模拟系统中,靶⾯被分隔为若⼲同⼼圆,如果与10、9、8、7、6环对应的
圆的半径分别为1、2、3、4、5,脱靶计为0环。若以靶⼼为坐标原点,那么根据中靶点M (x ,y )的
坐标,就可以计算出每次击发的成绩。试编程模拟这⼀计算过程。(0.1,0.2,10;1,0.2,9;1,2,8;2,3,7;3,4,6;4,5,0)
10. 求⼀元⼆次⽅程a 2
x +bx +c =0的实根。如果没有实根,则输出提⽰信息,要求结果为
⼩数占三位的七位实数。(1,5,4,-1.000,-4.000;1,2,1,-1.000;2,3,5,⽆实根;0,2,5,⾮⼀元⼆次⽅程)
练习四
1. 计算1~100的累加和。(5050)
2. 计算1~100内的偶数之和。(2550)
3. 计算50~100内的偶数之和。(1950)
4. 顺序打印1~10的阶乘。
5. 顺序打印8~10的阶乘。
6. 输⼊⼀个5位数,计算并输出各位的和。(12345,15;(1234,-28;123456,15))
7. 任意输⼊⼀⾏字符,统计字母a 和A 的个数。(abcd ,1;bcd ,0)
8. 利⽤公式
4
π=1-31+51-71+91-…求π的近似值,以最后⼀项的绝对值⼩于5
10-作
为控制条件,要求保留四位⼩数。(3.1416)
9. 任意输⼊10个数,求平均值。(1,2,3,4,5,6,7,8,9,10,5.500000) 10. 实现下⾯的输出。
11. 甲⼄两上会计进⾏点钞票⽐赛,甲的速度为5张/秒,⼄为8张/秒。⼄在甲已经点了100张钞票后才开始,问:只要⼏秒时间⼄就可以超过甲?(34)
12.将⽤键盘输⼊的若⼲字符顺序输出到屏幕上。(apple,apple)
13. 编程实现求某班同学的平均成绩。假设每个班最多有30个⼈,成绩取0~100之间的数。成绩是⼀个⼀个依次输⼊的,如果输⼊的不是0~100之间的数,或者已经输⼊了30个数,则结果输⼊,输出计算结果,结果保留两位⼩数。(-20,0.00;30,50,-20,50,40.00)
14. 顺序打印100~1000之间所有9的倍数,如果⼀个数同时也是7的倍数则停⽌打印。(108 117 (126))
15. 求任意正整数的除了⾃⾝以外的最⼤因数。(24,12)
16. 阿⽶巴⽤简单分裂⽅式繁殖,每分裂⼀次要⽤3分钟。将若⼲个阿⽶巴放在⼀个盛满营
2个,试问,养液的容器内,45分钟后容器内充满了阿⽶巴。已知容器最多可以装阿⽶巴20
开始的时候往容器内放了多少个阿⽶巴?(32)
17. ⾕⾓猜想:对于任意⼀个⾃然数n,若n为偶数,则将其除以2;若n为奇数,则将其乘以3,然后再加1。如此反复,经过有限次运算后,总可以得到⾃然数1。试编程证之。(11;12)
18. 打印九九乘法⼝诀。
练习五
1.某班有3个学⽣选修了某门课程,要计算他们的平均成绩并打印出平均成绩(结果保留
⼀位⼩数)和所有低于80分的成绩。(70,80,90,80.0,70)
2.某班有n(在程序中取10)个学⽣选修了某门课程,要计算他们的平均成绩关打印出来,
结果保留⼀位⼩数。(65,75,85,95,85,75,75,75,75,95,80.0)
3.某班有n(在程序中取10)个学⽣选修了某门课程,打印出所有低于80分的成绩。(65,
75,85,95,85,75,75,75,75,95;65,75,75,75,75,75)
4.某班有n(在程序中取10)个学⽣选修了某门课程,要计算他们的平均成绩并打印出平
均成绩(结果保留⼀位⼩数)和所有低于80分的成绩。(65,75,85,95,85,75,75,75,75,95;
65,75,75,75,75,75,80.0)
5.输⼊任意5个整数,输出它们的和并打印出这些数。(1,2,3,4,5,15,1,2,3,4,
5)
6.假设数组a中已有5个数,要在第1个数的前⾯插⼊⼀个数x,并保持这5个数的前后
关系不变,试编程实现。(1,2,3,4,5;6;6,1,2,3,4,5)
7. 求数组(有10个元素:1,0,3,5,0,0,0,0,0,0)中0元素的个数。(7) 8. 某班有10个同学参加了某门课的考试,试计算他们的平均成绩,并打印出平均成绩(结果保留⼀位⼩数)和低于平均成绩的成绩列表。
(65,75,85,95,85,75,75,75,75,95;80.0,65,75,75,75,75,75)
9. 在某体育项⽬中,同时有7位裁判为运动员打分,运动员的最终成绩是去掉⼀个最⾼分
和⼀个最低分的5个得分的平均值,试编程实现计算运动员成绩的过程,结果保留⼀位⼩数。(3,5,6,7,8,9,10;7.0)
10. 试编程实现将⼀个任意长度的数组倒置,并且程序中只能使⽤⼀个数组,不能引⼊第⼆
个数组。(1,2,3,4,5,6,7,8,9,10;10,9,8,7,6,5,4,3,2,1) 11. 在第10题中,若可以引⼊第⼆个数组,怎么编程。
12. ⽤1~12初始化数组a[3][4],然后从键盘输⼊的任意两个数替换12个数的中间两个,输出替换前后的⼆维数组。
13. 对于矩阵A =
3332
31
232221
131211a a a a a a a a a ,与数值t 和乘积定义为t ·A =
3332
312322
21
131211
ta ta ta ta ta ta ta ta ta 。试编程实现这⼀运算。(1,2,3,4,5,6,7,8,9,2)
14. 对于给定的⼆维数组
131805212741,求最⼤值所在的⾏和列。(3,1)
15. 设A=(1a ,2a ,…,n a )、B=(1b ,2b ,…,n b )为n 维向量,求向量A 和B 的内积。(1,2,3,4,5;
5,4,3,2,1;35.000000)
16. ⽤起泡法对任⼀数组的数组元素进⾏排序,排序后元素按数值从⼩到⼤顺序排列。(5,4,3,2,1;1,2,3,4,5)
17. 判断n 阶⽅阵A =
nn n n n n n a a a a a a a a a a 3
2
1
22221
11211 是否为对称⽅阵。(()
17
5671435412
62321,是(否))
.
练习六
1. ⽤指针实现求两个数的和;(1,2;3)
2. ⽤指针实现求任意10个整数的累加和;(1,2,3,4,5,6,7,8,9,10;55)
3. ⽤指针实现求1~100的累加和;(5050)(亦练习四--1)
4. ⽤指针实现输⼊并打印数组a[5](5,3,1,2,4);
5. 运⽤内存的动态分配求若⼲整数中的最⼤值。(5,1,3,5,2,4;3,5)
6. 试⽤指针编程实现将数组a[10]={1,2,3,4,5,6,7,8,9,10}倒置。(10,9,8,7,6,5,4,3,
2,1)(亦同练习五--10)
7. 在任意数组的任意位置插⼊⼀个新元素。(5;1,2,3,4,5;6;1;1,6,2,3,4,
5)
8. 打印⼆维数组a[3][3](1,2,3,4,5,6,7,8,9)。 9. 通过指针的指针赋值并输出。(3)
10. 给指针数组赋值,并⽤指针的指针输出。(1,3,5) 11. 数组中包含n 个整数,并⽤指针求最⼤数的位置。(5;
1,3,5,2,4;3,5)(亦同练
习六--5)
12. ⽤选择法将任⼀数组iData 中的数值排序。(10;1,3,6,2,5,4,7,9,8,10;10,
9,8,7,6,5,4,3,2,1)
13. 将数组iSrc 复制到数组iDest 中,⼆者均为任意数组。(9;1,2,3,4,5,6,7,8,
9;1,2,3,4,5,6,7,8,9)
14. 求⼆维数组iData[M][N]中最⼤元素所在的⾏和列。(
131805212741;3,1)(亦同练
习五--14)
练习七
1. 求字符串“Beijing Olympic Games ”的长度。(21)
2. 输⼊⼀句话(英⽂),以空格和“#”结束,试统计⼀共输⼊了多少个单词。(Beijing Olympic
Games start at 8 aug, 2008 #;8) 3. 输⼊⼀句话,统计字母的个数。(I ’m a sport, I like Beijing, I like Olympic.32) 4. sprintf 函数的使⽤。
5. 截取并输出任意字符串前的前n 个字符,若n 的值输⼊错误,提⽰错误并退出。(abcd ;字符串长度0到59
2;ab )
6. 输⼊⼀个字符串,然后把其中的⼤写字母转化为⼩写字母,并统计转化的⼤写字母的个
数,最后输出转化后的字符串。(AbCd ;abcd ,2)
7. 某班有3名同学参加考试,求成绩最⾼的学⽣的姓名和成绩。(王刚 87,黎明 95,孙
国民 85;黎明 95) 8. 字符指针的数组的应⽤;
9. 函数strcpy 和strncpy 的应⽤。 10. 交换两个字符串。
11. 函数strcat 和strncat 的应⽤。
12. 函数strcmp 、strncmp 和stricmp 的应⽤。(ABC ,AbC ,—1;123,\x31\x32\x33,0;
ABC ,AB ,1;ABC ,AB ,0;ABC ,AbC ,0) 13. 求若⼲(10个)字符串中的最⼤字符串。(one ,two ,three
,four ,five ,six ,sever ,eight ,
nine ,ten ;two )
14. 判断⼀个字符串是否包含⼀个⼦串。(one world ,one dream ,World ,one ;不包含,包
含,在第⼀位)
15. 函数strlwr 和strupr 的应⽤。(thIS IS A samPLE ,this is a sample ;this is a sample ,THIS IS A SAMPLE )
16. 任意输⼊⼀个加法运算,格式为“整数1+整数2=”,例如“23+32=”,试完成计算并打印出结果。注:算式中,开始位
置,“+”和“=”的前后都可以有空格。( 23 + 32 =;55) 17. 函数strlen 和sizeof 的应⽤。(apple ;5,6,10)
18. 输⼊两个字符串,然后把它们连接在⼀起形成⼀个字符串,再输出到屏幕上。(I ’m a ,student ;I ’m astudent )(7)
19. 输⼊⼀个字符串,再将字符串倒置后打印出来。(apple ;elppa )(8) 20. 将输⼊的若⼲单词按字典顺序排序,输出排序结果。(one ,two ,three ;one ,three ,two )(亦同练习七--10)
练习⼋
1. ⽤函数的调⽤⽐较两个数的⼤⼩。(1,2;2)
2. 区别实参和形参(顺带区别有返回和⽆返回及函数原型的应⽤)。(10;55,10)(5+2+2)
3. ⽤递归法计算n!,⽤公式n!=()??
>-=)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。