二、简单应用题
请编写一个函数sortnum(intnum),参数num是一个三位的整数,该函数将num的百位、十位和个位的数字进行重排,并返回由上述的三个数字组成的最大的三位数。
注意:部分源程序已存在文件kt13_2.cpp中。
如输入456后,输出结果如下:
654
请勿修改主函数main和其他函数中的内容,仅在函数sortnum的花括号中填写若干语句。
文件kt13_2.cpp的内容如下:
#include
intsortnum(intnum)
{
}
voidmain()
{ intnum;
intresult=0;
cout<<"请输入一个三位数";
cin>>num;
cout< 【参考答案】 int number[3],i,j,temp; for(i=0;i<3;i++) { number[i]=num%10; num=num/10; } for (i=0;i<2;i++) { for (j=i+1;j<3;j++) if (number[j]<=number[i]) { temp=number[j]; number[j]=number[i]; number[i]=temp; } } num=number[2]*100+number[1]*10+number[0]; return num; 【试题解析】 本题主要考查对基本控制结构和数组的访问,以及根据实际需要建立模型,对数字进行排序的能力,答案中采用的是冒泡排序法。请注意程序中数组下标的范围和两层for循环嵌套中循环变量的取值情况。 相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |