@iwktd981220
2017-11-12T01:00:47.000000Z
字数 1469
阅读 447
实验课
第9次实验课需要提交作业
本次作业需提交: 第4章的补充题“1”、“2”、“3”、“4”
第5章简答题“5”第4章程序设计补充题:
【补充题1】输入两个正整数m和n,求其最大公约数和最小公倍数。
提示:找出既能整除m也能整除n的数就是最大公约数,用m和n的乘积除以最大公约数就是最小公倍数。
【补充题2】输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如153是一个水仙花数,因为153=1+125+27
【补充题3】猴子吃桃问题。猴子第1天摘下若干个桃子,当即吃了一半,还不过瘾,有多吃了一个。第2天早上又将剩下的桃子吃了一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半另加一个。到第10天早上再想吃时,就只剩一个桃子了。求第1天共摘了多少个桃子。
第4章程序设计补充题:
【补充题4】两个乒乓球队进行比赛,各出3人。甲队为A,B,C 共3人,乙队为X,Y,Z也是3人。已抽签决定比赛名单。有人向队员打听比赛的名单,A说他不和X比,C说他不和X,Z比。请编程序找出3对赛手的名单。
![]()
提示:采用三重循环结构进行比较,有条件:
1. 一个队员只能和对方的一人比赛;
2. A不和X比,C不和X,Y比。
在内循环-第三重循环中满足2个条件就输出A和i比,B和j比,C和k比。第5章简答题
【3】用for循环实现下述整型数组的初始化操作。
Squares
0 1 2 3 4 5 6 7 8 9 10
#include <iostream>#include <stdio.h>using namespace std;void task1() {int m,n;cin>>m>>n;if (m < n) {int temp = m;m = n;n = temp;}int j = n;for (; j >= 1; j--) {if (m % j ==0 && n %j == 0)break;}cout<<"the greatest common factor is ";j == 0? j = 1,cout<<j : cout<<j;cout<<"the lowest common multiple:";cout<< (m*n/j);}void task2() {int a[3];for (int i = 100; i <= 999; i++) {int num = i;int mul = 100;for (int j = 1; j <= 3; j++) {a[j-1] = num/mul;num -=a[j-1]*mul;mul /=10;}int x =((a[0]*a[0]*a[0])+(a[1]*a[1]*a[1])+(a[2]*a[2]*a[2]));if (i == x) cout<<i<<endl;}}void task3() {int num = 1;for (int i = 0; i < 9; i++) {num = (num+1)*2;}cout<<num<<endl;}void task4() {char a[3]={'X','Y','Z'};for(int i=0;i<3;i++){for(int j=0;j<3;j++){for(int t=0;t<3;t++){if(i!=0 && t!=0 && t!=2 && i!=t && i!=j && t!=j)printf("A vs %c\nB vs %c\nC vs %c\n",a[i],a[j],a[t]);}}}}int main() {int task;cin>>task;switch (task) {case 1:task1();break;case 2:task2();break;case 3:task3();break;case 4:task4();break;}return 0;}