蓝杯二十三

/*算法提高 11-1实现strcmp函数  时间限制:1.0s  内存限制:256.0MB提交此题    问题描述  自己实现一个比较字符串大小的函数,也即实现strcmp函数。函数:int myStrcmp(char *s1,char *s2) 按照ASCII顺序比较字符串s1与s2。若s1与s2相等返回0,s1>s2返回1,s1<s2返回-1。具体来说,两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止(注意'\0'值为0,小于任意ASCII字符)。如:  

"A"<"B" 

 "a">"A"  

"computer">"compare"  

"hello"<"helloworld"

样例输出

hello

helloword

-1

数据规模和约定  

字符串长度<100。 */

#include <stdio.h>

  int main()  {   

int i;      char a[100],b[100];   

gets(a);      gets(b);   

  for (i=0;;i++)      {         

if (a[i]<b[i])          {           

printf("-1");break;          }         

if (a[i]>b[i])          {       

printf("1");break;          }       

  if (a[i]==b[i])          {             

if (a[i+1]=='\0'&&b[i+1]=='\0')              {               

printf("0");break;              }             

if (a[i+1]=='\0')              {                 

printf("-1");break;              }           

  if (b[i+1]=='\0')              {               

  printf("1");break;             

}         

}         

  }   

return 0; 



二、/*算法提高 7-2求arccos值  时间限制:10.0s  内存限制:256.0MB提交此题    问题描述  利用标准库中的cos(x)和fabs(x)函数实现arccos(x)函数,x取值范围是[-1, 1],返回值为[0, PI]。要求结果准确到小数点后5位。(PI = 3.1415926)  提示:要达到这种程度的精度需要使用double类型。

样例输入

0.5

样例输出

0.5

1.04720

数据规模和约定  

-1 <= x <= 1, 0 <= arccos(x) <= PI。

#include<stdio.h>

#include<math.h>

int main(){   

double x;   

scanf("%lf",&x); 

  printf("%.5lf",acos(x));

return 0;

}*/

#include<cstdio> 

#include<cmath> 

#define PI 3.1415926 

using namespace std;   

int main()  {     

float x;      double s;   

  scanf("%f",&x);       

if(x==0) s=PI/2;         

else if(x<0)

s=PI-atan(sqrt(1-x*x)/(-1*x));       

else

s=atan(sqrt(1-x*x)/x);       

printf("%0.5f\n", s);   

return 0; 



图片发自简书App

图片发自简书App

图片发自简书App
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容