使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(int N[4])的功能是用4个数字,组成互不相同且无重复数字的三位数,并将满足所有条件的数字输出到屏幕,并且每输出一个三位数字就换一行。

admin2018-10-23  31

问题 使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(int N[4])的功能是用4个数字,组成互不相同且无重复数字的三位数,并将满足所有条件的数字输出到屏幕,并且每输出一个三位数字就换一行。
    程序分析:可填在百位、十位、个位的数字都是1、2、3、0。组成所有的排列后再去掉不满足条件的排列。如果判定第一个数字是0则也去掉。
1  #include<iostream.h>
2  void fun(int N[4])
3  {
4
5 }
6  int main()
7  {
8  int N[4]={1,2,3,0);
9  fun(N);
10  return 0;
11  }

选项

答案1 int i,j,k; 2 for(i=0;i<4;i++) //百位循环 3 { 4 for(j=0;j<4;j++) //十位循环 5 for(k=0;k<4;k++) //个位循环 6 { 7 if(i!=j&&j!=k&&k!=i&&N[i]!=0)//当三位数不同,并且百位不为0 8 { 9 cout<<N[i]<<N[j]<<N[k]<<end1; //输出这三位数组成的数字 10 } 11 } 12 }

解析 (1)该程序功能是输出百、十、个位都不相同的组合。它的解题思路,利用三层循环,对百、十、个位数字是否相同进行判断。
    (2)从已给部分源程序的main主函数开始入手,核心函数void fun(int N[4])中的N[4]参数为存放输入的四位数字的数组。
    (3)利用三层循环,对要三位数字是否相同进行判断。
    (4)如果三位数不同,并且百位不为0。那么依次输出这三位数,即为三位数组成的数字。
转载请注明原文地址:https://jikaoti.com/ti/sct0FFFM
0

最新回复(0)