想练手的高手进

Group04数组处理
总述:编写一个程序,能完成如下的功能,并且自行输入一个七行七列的数组进行验证,

但输入的数组要满足如下的条件:
(1)最小的数字要在最左上角;
   
(2)中间大小的数字(如2,3,4中的3)不能处于数组的正中间位置;
   
(3)其中不能有超过4个相等的数字(例如其中不能有5个3,但是可以在有4个3的基础上再有4个4);
   
(4)一定要有字母,浮点数(包括小数点后第一位大于5和小于5两种)元素,并在执行一是输入“Y“(见功能1)。

如下的表格说明首行首列均是用第1行1列而非第0行0列,编写时可根据个人习惯而定

要实现的功能:
1:能够对输入的各个元素进行判断,如果其中有非整数(包括浮点数,字母,特殊符号等),则输出“error”,并询问是否继续操作,若继续(则使用 “Y“代替),则将其中的浮点数四舍五入,其他非整数均替换成其ASICC码所对应的数字(如“\0“替换成“0“),并将原有的表格和转换后的表格分别输出,并在转换后的数组基础上完成如下的功能,若否(则使用“N”代替),则就此结束并输出第一个非整数的的地址;
2:输入一个整数,通过对整个数组进行扫描,找出所有3个元素相加和等于这个整数的,并且每个元素只能用一次,如下表格
1 4 5 2 3 5 4
9 56 56 5 62 52 42
40 12 11 10 32 23 32
20 20 21 202 31 93 52
232 211 65 235 26 12 82
23 323 92 365 70 72 32
33 24 32 323 232 32 33

如果输入“10”,则只有两组为“1,4,5”和“2,3,5”其中的第一行第三列的“5”只能用一次,下一次只能用第一行第六列的“5”
其输出格式为:共有 组,包括:
第1组为: 行 列+ 行 列+ 行 列
其元素为: + +
第2组为: 行 列+ 行 列+ 行 列
其元素为: + +
第3组为: 行 列+ 行 列+ 行 列
其元素为: + +
* * * * * * * * * * *
* * * * * * * * * * *
第n行为行: 列+ 行 列+ 行 列
其元素为: + +
若没有则输出“无满足的元素”;  
3:对转换后的数组元素进行排序,要求将其中的前7小元素放在第1行,出于中间大小的(如条件2中的数字“3”),放在正中间,其中各个元素之间均为交换,未被交换的其位置不能发生变化,并将变化之后的表格进行输出。
4:在3的基础上,再任意输入一个整数,通过对各个元素进行处理,将所有与此数之差相等的附成同一个数字(包括比它大和比它小的),要求差最小的变为次数+1,其次为此数+2,依次递推,并且经过一次处理的要保持不变,不能再次变化,如下表:
1 4 5 2 3 5 4
9 56 56 5 62 52 42
40 12 11 10 32 23 32
20 20 21 202 31 93 52
232 211 65 235 26 12 82
23 323 92 365 70 72 32
33 24 32 323 232 32 33

如果输入“4”,则原来的第1行第2列和第1行第7列的“4”均变成“5”,而下一次“3”,“5”变为“6”的时候上一次由“4”变化而成的“5”就不能再次变化,要保持“5”不变,并将变化之后的表格进行输出,并且统计出总共的如上面所说的经过变化后要变化却不能变化的“5”的个数,并且输出其总共个数%d。


作者: gxiande   发布时间: 2011-06-10

又是作业题吧

作者: TKD03072010   发布时间: 2011-06-10