《c语言练习题977915页word文档.doc》由会员分享,可在线阅读,更多相关《c语言练习题977915页word文档.doc(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、如有侵权,请联系网站删除,仅供学习与交流c语言练习题97791【精品文档】第 5 页EX3,1描述给定N个不同的整数,要求对这N个整数按如下规则排序并输出。规则一:所有的偶数排在奇数前面。规则二:在规则一的前提下按照从大到小的顺序排序。输入说明只有一组数据。数据由两行构成,第一行为整数n(0n=100),表示待排序整数的个数。第二行是n个整数,每个整数的取值区间都为-3276832767,整数之间以空格间隔。输出说明在一行输出排好序的整数,整数之间以空格间隔,然后换行。输入样例5 1 2 3 4 5输出样例4 2 5 3 1EX3,2描述编写一个程序,从键盘输入n个非零整数(0 n 1000)
2、,将这n个数中每个数的各位数字取出来相加,并按照从小到大的次序依次输出这些数字和。例如,497的各位数字和为20(4+9+7),1069的各位数字和为16(1+0+6+9)。输入说明一组数据,输入的整数之间以空格分隔,输入为0时表示数据结束(0不算作有效数据)。输出说明在一行上从小到大输出计算结果,整数之间用空格分隔,最后换行。输入样例497 1069 68 71 137 0输出样例8 11 14 16 20EX3,3描述一幅mn的灰度图像可以用一个二维矩阵表示,矩阵中的每个元素表示对应像素的灰度值。灰度图像二值化是将灰度图像每个像素点的灰度级变成只有两个值0或1。二值化方法是用每个像素点的灰
3、度和一个阈值进行比较,大于等于该阈值则该像素二值化结果为1,否则二值化结果为0。阈值可以用灰度图像所有像素点的灰度平均值(用整除求平均值)表示。现给出一个矩阵表示的灰度图像,输出二值化后的矩阵。输入说明输入数据第一行为两个整数m(m256) 和n (n256)分别表示图像的宽度和高度,其后是n行数据,每行m个整数,分别表示图像各个像素的灰度值(0灰度值256)。输出说明输出n行数据,每行数据由m个整数组成,表示二值化后图像的各个像素点的灰度,整数之间用空格分隔。输入样例5 40102 83 485 912 14 106 71 15 36 10输出样例0 0 0 0 10 0 1 0 11 1
4、1 1 10 1 0 1 1EX3,4描述写一个程序,找出给定矩阵的马鞍点。若一个矩阵中的某元素在其所在行最小而在其所在列最大,则该元素为矩阵的一个马鞍点。输入说明输入数据由m+1行构成,第一行只有两个整数m和n(0m100,0n100),分别表示矩阵的行数和列数,接下来的m行、每行n个整数表示矩阵元素(矩阵中的元素互不相同),整数之间以空格间隔。输出说明在一行上输出马鞍点的行号、列号(行号和列号从0开始计数)及元素的值(用一个空格分隔),之后换行;若不存在马鞍点,则输出一个字符串“no”后换行。输入样例4 311 13 121 407 72 8823 58 1 134 30 62输出样例1
5、1 72EX3,5描述输入多个个以#结尾的字符串(每个字符串占一行),要求将其中的小写字母转换为大写字母(其他字符不处理),并将每个字符串输出(包括#号)。输入说明多组数据,每组输入数据是一个以#结尾的字符串(长度不大于80),该字符串占一行。当字符串只有一个#没有其他字符时表示输入结束输出说明对于输入的每个字符串,在一行上输出转换后的字符串,然后换行。表示结束的字符串不处理输入样例aaaAa5,O#123bc aD#输出样例AAAAA5,O#123BC AD#提示以下代码可以从键盘输入一行字符char s100;gets(s);EX3,6描述对于给定的字符序列,从左至右将所有数字字符取出拼接
6、成一个无符号整数(字符序列长度小于100,拼接出的整数小于231),计算并输出该整数的最大因子(如果是素数,则其最大因子为自身)。输入说明有多组数据,每组数据为一行字符序列,当字符序列只包含一个字符#时表示输入结束输出说明对每个字符序列,求出所得整数的最大因子;若字符序列中没有数字或找出的整数为0,则输出0。每个整数占一行输出。表示输入结束的数字不处理输入样例sdf0ejg3.f?9f?4afd0s&2d79*(gabcde#输出样例138570提示以下代码可以从键盘输入一行字符char s100;gets(s);EX3,7描述请写一个程序,判断给定表达式中的括号是否匹配。表达式中的合法括号为“(”、“)”、“”、“”、“”、“”,这三种括号可以按照任意的次序嵌套使用,但不能交叉使用。输入说明有多个表达式;每个表达式占一行(不超过100个字符),当表达式只包含一个星号(*)时,表示输入结束输出说明对每个表达式,若其中的括号是匹配的,则输出“yes”,否则输出“no”。表示输入结束的表达式不处理输入样例(d+f)*2(2+3)()4(67)9*输出样例yesnonono提示以下代码可以从键盘输入一行字符char s100;gets(s);