5330.在屏幕上按照默认格式输出123,并换行。之后按照域宽为6输出456。
#include <bits/stdc++.h>
using namespace std;
int main()
{
string a,b;
cin>>a>>b;
cout<<a<<endl;
cout.width(6);
cout<<b<<endl;
return 0;
}
5331.用const替换宏定义: #include using namespace std; #define t1 a+a #define t2 t1-t1 int main() { int a; cin>>a; cout << "t2 is " << t2<
#include <iostream>
using namespace std;
int main()
{
int a;
cin>>a;
const int t1=a+a;
const int t2=t1-t1;
cout<<"t2 is "<<t2<<endl;
return 0;
}
5332.使用void型指针,分别将整型数据和字符类型数据的地址赋值给指针,并使用void型指针将两类数据内容显示在屏 幕上。
#include <iostream>
using namespace std;
int main()
{
int a;
string b;
cin>>a>>b;
int *p=&a;
string *l=&b;
void *qq=p,*ql=l;
cout<<*(int *)qq<<endl;
cout<<*(string *)ql<<endl;
return 0;
}
5333.利用函数重载求整型、长整型和双精度浮点类型数据的三次方数。
#include <iostream>
#include<stdio.h>
#include <stdlib.h>
using namespace std;
int multiplie(int a)
{
cout<<a<<"*"<<a<<"*"<<a<<"= "<<a*a*a<<endl;
}
long multiplie(long a)
{
cout<<a<<"*"<<a<<"*"<<a<<"= "<<a*a*a<<endl;
}
double multiplie(double a)
{
printf("%.2f*%.2f*%.2f= %.3f",a,a,a,a*a*a);
}
int main()
{
int a;
cin>>a;
multiplie(a);
long c;
cin>>c;
multiplie(c);
double b;
cin>>b;
multiplie(b);
return 0;
}
5334.定义一个整型指针变量p,然后用new为其分配一块存放整型数据的内存空间,指针变量p指向这个内存块。在这个内 存块中赋予初值10,并将其输出。最后,用delete释放指针变量p指向的内存空间。
#include<iostream>
//定义一个整型指针变量p,
//然后用new为其分配一块存放整型数据的内存空间,
//指针变量p指向这个内存块。在这个内
//存块中赋予初值10,并将其输出。最后,
//用delete释放指针变量p指向的内存空间。
using namespace std;
int main()
{
int *ptr;
ptr=new int(10);
cout<<*ptr<<endl;
delete ptr;
}
5335.利用引用作为函数的形参实现两个整型数据的交换。
#include <iostream>
using namespace std;
int exchange(int a,int b)
{
int &aa=a;
int &bb=b;
int p=aa;
a=bb;
b=p;
cout<<"x="<<a<<" "<<"y="<<b<<endl;
}
int main()
{
int a,b;
cin>>a>>b;
exchange(a,b);
return 0;
}
5336.编写一个C++风格的程序,用动态分配空间的方法计算Fibonacci数列的前20项并存储到动态分配的空间中。
#include<iostream>
using namespace std;
int Fibonacci(int i)
{
if(i==1||i==2){
return 1;
}
else{
return Fibonacci(i-1)+Fibonacci(i-2);
}
}
int main()
{
int *p=new int[20];
for(int i=1;i<=20;i++){
*p=Fibonacci(i);
cout<<*p;
cout<<endl;
}
delete []p;
return 0;
}
5337.编写一个C++风格的程序,建立一个被称为sroot()的函数,返回其参数的二次方根。重载函数sroot()3次,让它返回 整数、长整数与双精度数的二次方根(计算二次方根时,可以使用标准库函数sqrt())。
#include<iostream>
#include<stdlib.h>
#include<cmath>
using namespace std;
double sroot(int n) {
return sqrt(n);
}
double sroot(long n) {
return sqrt(n);
}
double sroot(double n) {
return sqrt(n);
}
int main() {
int a;
long b;
double c;
cin>>a>>b>>c;
cout << "sqrt(i)= " << sroot(a) ;//此时调用的是参数为int型的sroot
cout << " sqrt(l)= " << sroot(b) ;//此时调用的是参数为long型的sroot
cout << " sqrt(d)= " << sroot(c) ;//此时调用的是参数为double型的sroot
return 0;
}
5338.从小到大输出。
#include<iostream>
#include<stdlib.h>
#include<cmath>
using namespace std;
int main()
{
int a,b,p;
cin>>a>>b;
int &aa=a;
int &bb=b;
p=aa;
if(a>b){
p=aa;
a=bb;
b=p;
}
cout<<"x= "<<a<<" y= "<<b<<endl;
}