问答题
[说明]
建立一个分数类,使之具有下述功能:建立构造函数,它能防止分母为0,当分数不是最简形式时进行约分以及避免分母为负数。如
经过类Num(3,-6)的处理,转换为
;
经过类Num(8,10)的处理后,转换为
。
[C++代码]
#include<iostream.h>
#include<math.h>
class Num
public:
Num (int a,int b);
private:
int num1;
int num2;
:
Num:: Num (int a,int b)
if(
(1)
)
cout<<"ERROR"<<endl;
return;
int min=fabs(a)<fabs (b)fabs (a): fabs (b);
int x=1;
for (int i=1;i<=min;i++)
if(
(2)
)
x=i;
a/=X;
b/=x;
if(
(3)
)
a=-a;
b=-b;
(4)
(5)
【参考答案】
(1)b==0
(2)a%i==0&&b%i==0
(3)b<0
(4)num1=a;
(5)num2=b;
点击查看答案&解析
<上一题
目录
下一题>
热门
试题
问答题
[说明] 以下C语言程序实现了生成从里到外是连续的自然数排列的回旋矩阵,矩阵形式如下: 7 6 5 16 8 1 4 15 9 2 3 14 10 11 12 13 程序的变量说明如下: x1:矩阵上边界; x2:矩阵下边界; y1:矩阵左边界; y2:矩阵右边界; s:数组元素升降标记,s等于1为升,s等于-1为降; a[]:存放矩阵元素的数组。 仔细阅读C语言程序源码,将 (n) 处的语句补充完整。(注:每处仅一个语句) [C程序] #include<stdio.h> void main ( ) const int N=20; int i=0,j=0,a[N][N],n; int m,x1,x2,y1,y2,s; while (1) Printf ( ninput matrix row N( N>=2): ); scanf ( %d ,&n); printf ( n ); if (n>=2) break; m=n*n; x1=0; y1=0; x2=n; y2=n; if(n%2==0) j=n-1; y2=n-1; s=1; else i=n-1; y1=1; s=-1; while (1) if (s==1) for (i; i<x2; i++) a[i][j]=m--; i--; j--; (1) for (j;j>=y1;j--) a[i][j]=m--; j++; i--; y1++; (2) else for (i;i>=x1;i--) a[i][j]=m--; i++; j++; (3) for (j;j<y2;j++) (4) (5) i++; (6) S=i; if (m<1) break; for (i=O;i<n; i++) for (j=O;j<n;j++) printf ( %6d ,a[i][j]); printf ( n ); printf ( n );
点击查看答案&解析
问答题
“统计数据”:起点“统计查询”,终点“统计报表”文件。 “录取数据”:起点“加工3录取”,终点“录取文件”。 “成绩”:起点“加工2考试”,终点“考生”。
点击查看答案&解析
相关试题
导师={姓名+性别+出生年月+专业+研究...
需求分析阶段的主要任务是需求收集和分析,...
“背包问题”求解方法主要是一些启发式算法...
(1)DEPTNO (2)FROM STUDENT (3...
根据数据流图11-2可知,数据流图11-...