CINTA课前小练
hhh写博客的想法早在半年前就有了,但是也仅仅是停留在想法上而已,
没想到最后我的第一次是为了完成老师布置的作业hhh
虽然老师要求的好像是用C语言写,但用C++也不是不可以吧/(ㄒoㄒ)/~~
写一个插入排序的函数,即输入一个数组,完成排序
#include<iostream>
using namespace std;
int main()
{
void exchange(int &,int &); //交换函数
int N;
cout<<"目标数组的长度:"; cin>>N;
int*p=new int[N]; //建立动态数组
for(int i=0;i<N;i++) //输入目标数组
cin>>p[i];
//排序
for(int i=1;i<N;i++)
for(int j=i;j>0;j--)
{
if(p[j]<p[j-1])exchange(p[j],p[j-1]);
}
for(int z=0;z<N;z++)
cout<<p[z]<<" ";
delete []p; //释放空间
return 0;
}
void exchange(int &a,int &b)
{
int Turn=0;
Turn=a;
a=b;
b=Turn;
}
👉从小到大排列
完成一个函数,输入值为整数,输出该值的二进制
看到题目的第一想法确实是想用C语言printf函数格式化输出整数的二进制,但是后来尝试后才知道没有__%b__这种形式,printf也不支持输出二进制格式。
#include<iostream>
#include<math.h>
using namespace std;
void In2Addr(int a)
{
int a2=a;
long b=0;
for(int i=0;;i++)
{
if(a2%2==1) b+=pow(10,i);
a2=a2/2;
if(a2==1)
{
b+=pow(10,i+1);
break;
}
}
cout<<"二进制:"<<b<<endl;
}
int main()
{
int a;
cout<<"请输入一个整数:";cin>>a;
In2Addr(a);
return 0;
}
完成一个判断整数是否素数的函数,即,输入一个整数,判断其是否素数
#include<iostream>
using namespace std;
int main()
{
void PrimeCheck(int);
int N;
short YorN=0; //yes:1/no:0
do
{
N=0;
cout<<"请输入一个整数:";cin>>N;
PrimeCheck(N);
cout<<"是否继续(回复1/0):";cin>>YorN;
}while(YorN==1);
return 0;
}
void PrimeCheck(int a)
{
short PorNot=0; //0:not a prime
for(int i=a-1;i>1;i--)
{
if(a%i==0)
{
cout<<a<<"不是素数!\n";
PorNot=1;
break;
}
}
if(PorNot==0) cout<<a<<"是素数\n";
}
编辑一个数学公式:a的立方 + b的立方 = c的立方
这道题目的意思不是很懂,暂且解读为判断等式是否成立&知道其中两个求另外一个。
#include<iostream>
#include<cmath>
#include<string>
using namespace std;
int main()
{
double a,b,c;
string ans;
cout<<"input a:";cin>>a;
cout<<"input b:";cin>>b;
cout<<"inout c:";cin>>c;
cout<<"a^3+b^3=c^3?\n";
ans=(pow(a,3)+pow(b,3)==pow(c,3)?"yes":"no");
cout<<ans;
if(ans=="no")
cout<<"\nThe true 'c' is:"<<pow((pow(a,3)+pow(b,3)),1.0/3)<<endl;
return 0;
}