moocc++输入整数显示十六进制和八进制(10分)
题目内容:
编写程序,输入整数,显示其十进制、十六进制和八进制形式。如输入-31,输出:
-31 -1f -37
输入:一个整数,注意,可能是负数。
输出:三个数,十进制、十六进制和八进制,用空格隔开。
提示:设输入的整数为n。(1)使用?:条件运算符求绝对值赋给另一变量。(2)十进制、十六进制和八进制形式,在输出前分别输出dec,hex,oct,如cout<<oct<<m;(3)如果n小于0,先输出一个负号,不换行,再输出整数。
注意,即使你知道了if语句,在这儿也不应该使用。
样例1输入:
-31
样例1输出:
-31 -1f -37
#include<iostream>
#include<cmath>
using namespace std;
int main(){
int a;
cin>>a;
int t=fabs(a);
cout<<a;
if(a<0) cout<<" -";
cout<<hex<<t;
if(a<0) cout<<" -";
cout<<oct<<t;
}
moocc++计算1+1/2+1/3+…+1/n(10分)
题目内容:
编写程序,输入非负整数n,计算s=1+1/2+1/3+…+1/n的值。输入0时,输出0。
输入:非负整数n
输出:级数的前n项和。
【提示】1/n应写成1.0/n。和应为double型。请自己分别使用for和while实现。
样例1输入:
3
样例1输出:
1.83333
#include<iostream>
#include<cmath>
using namespace std;
int main(){
int a;
cin>>a;
if(a==0){
cout<<"0";
return 0;
}
double s = 0;
for(int i=1;i<=a;i++){
s= s + 1/double(i);
}
cout<<s;
}
moocc++交替输出1和-1(10分)
题目内容:
编写程序,输入正整数n,从1开始交替输出n个1和-1。如输入3,输出 1 -1 1;
输入4,输出 1 -1 1 -1,数据间用一个空格隔开。
输入:一个正整数n。
输出:1,-1交替组成的序列,用空格隔开,末尾无空格。
【提示】 (1)k=1;将k=-k放在循环体中产生交替序列。
(2)末尾无空格的实现方法:
i=0;
cout<<a;
i++;
while(i<n){
cout<<" "<<a;
i++;
}
cout<<endl;
样例1输入:
3
样例1输出:
1 -1 1
样例2输入:
4
样例2输出:
1 -1 1 -1
#include<iostream>
#include<cmath>
using namespace std;
int main(){
int n;
cin