1.利用泰勒公式求cos(x)=1-x2/2!+x4/4!-……公式已给,重要的是注意细节,比如阶乘的存储最好用double型。
#include "stdafx.h"
#include <iostream>
#include <string>
#include "math.h"
#include "stdio.h"
#include "string.h"
#include "ctype.h"
#include <vector>
#include <queue>
#include <map>
#include <algorithm>
using namespace std;
double jiecheng(double x){
double re=1;
for(double i=x;i>1;i--)
re*=i;
return re;
}
int main(int argc, char* argv[])
{
double x;
double i,j;
double mycos=1;
scanf("%lf",&x);
for(i=1;i<4;i++){
mycos+=pow(-1,i)*pow(x,2*i)/jiecheng(2*i);
}
cout<<cos(x)<<endl<<mycos<<endl;
return 0;
}
2.归并两个有序字符串,要求输出不能有重复字符(其实就是merge函数啦)
#include "stdafx.h"
#include <iostream>
#include <string>
#include "math.h"
#include "stdio.h"
#include "string.h"
#include "ctype.h"
#include <vector>
#include <queue>
#include <map>
#include <algorithm>
using namespace std;
int main(int argc, char* argv[])
{
char str1[100],str2[100],str3[200];
int i=0,j=0,k=0;
gets(str1);
gets(str2);
for(i=0,j=0;i<strlen(str1)&&j<strlen(str2);){
if(str1[i]>str2[j]){
str3[k++]=str2[j++];
}
else if(str1[i]<str2[j]){
str3[k++]=str1[i++];
}
else{
str3[k++]=str1[i];
i++;j++;
}
}
while(i<strlen(str1)) str3[k++]=str1[i++];
while(j<strlen(str2)) str3[k++]=str2[j++];
str3[k]=0;
cout<<str3;
return 0;
}
3.两个整数数组(无序,可有重复元素),判断两个整数数组是否完全相同(重复元素的话,重复次数也要相同)
#include "stdafx.h"
#include <iostream>
#include <string>
#include "math.h"
#include "stdio.h"
#include "string.h"
#include "ctype.h"
#include <vector>
#include <queue>
#include <map>
#include <algorithm>
using namespace std;
void mysort(int *arr,int n){
int min=0,i,j,tmp;
for(i=1;i<n;i++){
min=i-1;
for(j=i;j<n;j++){
if(arr[min]>arr[j]) min=j;
}
tmp=arr[min];
arr[min]=arr[i-1];
arr[i-1]=tmp;
}
}
int main(int argc, char* argv[])
{
int n,flag=0;;
int i,j;
int *arr1,*arr2;
scanf("%d",&n);
arr1=(int*)malloc(n*sizeof(int));
arr2=(int*)malloc(n*sizeof(int));
for(i=0;i<n;i++){
scanf("%d",arr1+i);
}
for(i=0;i<n;i++){
scanf("%d",arr2+i);
}
mysort(arr1,n);
mysort(arr2,n);
for(i=0;i<n;i++){
if(arr1[i]!=arr2[i]) {
flag=1;
cout<<"no";
break;
}
}
if(!flag) cout<<"yes";
return 0;
}