数学函数,字符和字符串

数学函数,字符和字符串

数学函数

  • cmath头文件中提供了非常多有用的函数来执行常用的数学功能。

三角函数

功能描述
sin(radians)返回以弧度表示的角度的正弦值
cos(radians)返回以弧度表示的角度的余弦值
tan(radians)返回以弧度表示的角度的正切值
asin(radians)返回正弦函数的弧度角度值
acos(radians)返回余弦函数的弧度角度值
atan(radians)返回正切函数的弧度角度值

指数函数

功能描述
exp(x)返回e的x次方的值
log(x)返回自然对数的值
log10(x)返回以10为底的对数的值
pow(a,b)返回a的x次方的值
sprt(x)返回x的平方根

近似函数

功能描述
ceil(x)x被向上取整到一个最接近它的整数,为double类型
floor(x)x被向下取整到一个最接近它的整数,为double类型

min(),max(),abs()函数

  • 函数都定义在cstdlib头文件下

字符数据类型和操作符

  • 一个字符数据类型代表着一个字符
  • 字符串文字必须被双引号括起来(“ “)
  • 一个字符文字:单引号括起啦

从键盘读取一个字符

char ch;
cin>>ch;
cout<<ch<<endl;

特殊字符的转义字符

cout<<"He said \" Programming is fun"<<endl;

数值类型和字符类型之间的相互转换

  • 一个字符能被转换为任何数值类型,反之亦然
  • 当一个整数被转换为一个字符时,只有低八位能被使用
  • 当一个浮点数转换为一个字符类型时,浮点数先转换为int类型,然后再转换为char类型
  • char类型被看作是byte长度的整数
char uppercaseLetter = static_cast<char>('A'+(lowercaseLetter - 'a'));//大小写转换
  • 大小写字母或者数字判断
if(ch>='A' && ch <= 'Z') //大写字母判断
  cout<< ch <<" is an uppercase letter <<endl;
if(ch>='a' && ch <= 'z')//小写字母判断
  cout<< ch <<" is an uppercase letter <<endl;
if(ch>='0' && ch <= '9') //数字判断
  cout<< ch <<" is an uppercase letter <<endl;

生成随机字符

  • 一个字符是用一个整数编码的
a+rand( )%b  //返回一个a~a+b的随机数
rand( )% 10 //返回一个0~9的随机数
50+rand( )% 50 //返回~个50-99的随机数

static_cast<char>('a' + rand( )%('z' - 'a' + 1);  //生成一个随机的小写字母

static_cast<char>(ch1 + rand( )% (ch2 - ch1 + 1)  //生成一个位于ch1与ch2之间的随机字符

字符串类型

  • 一个字符串是一序列的字符
  • 使用string的数据类型
   string message = “Programming is fun";
  • 声明一个对象实际上是创建一个对象
  • 对象是通过类定义的
  • 一个对象是一个类的实例
  • 调用一个实例函数的语法是 objectName.functionName(arguments)
  • 默认的,一个string被初始化为一个字符串
  • string对象的简单函数
函数描述
length( )返回字符串中的字符个数
size( )同上
at(index)返回字符串中指定位置的字符
  • 连接字符串 string s1 = s2 + s3;
  • 直接连接两个字符串是非法的
  • 读取空白字符的方法:getline(cin, s);

格式化控制台输出

操作描述
setprecision(n)设置一个浮点数的精度
fixed显示指定小数位数的浮点数
showpoint即使没有小数部分也显示以零补足的小数点后位数
setw(width)指定打印字段的宽度
left调整输出到左边
right调整输出到右边
  • setprecision操作的作用是知道精度改变之前,一直保持效果
  • 如果精度的宽度不足够一个整数,setprecision操作将会被忽略
  • 可以用fixed操作来强制数字显示为非科学记数法的形式 cout<<fixed<<21311313.3224

简单的文件输入输出

写入文件
  • 首先要声明一个ofstream类型的变量: ofstream output;
  • 指定文件,需调用output对象的open函数:output.open("numbers.txt");
  • 可通过ofstream.output("number.txt) 创建一个输出对象和打开这个文件
  • 写入数据,使用流插入操作符**<<**
  • 输入文件完成后,调用output对象的close函数:output.close( )保证程序退出之前,数据已经写入到了文件
#include <iostream>
#include <fstream>
using namespace std;

int main()
{
    ofstream output;
    output.open("number.txt");
    output << 95 << " " << 56 << " " << 34;
    output.close();
    cout << "Done!" << endl;

    return 0;
}
读取一个文件
  • 首先声明一个ifstream类型的变量:ifstream input;

  • 用input对象的open函数指定一个文件:input.open("number.txt");

  • 可通过ifstream.input("number.txt) 创建一个输入对象和打开这个文件

  • 读取数据,使用流插入操作符**<<**:input>>score1>>score2>>score3;

  • 调用input对象的close函数:input.close( )

//从文件中读取数据

#include <iostream>
#include <fstream>
using namespace std;

int main()
{
    ifstream input;
    input.open("number.txt");
    int score1, score2, score3;
    input >> score1 >> score2 >> score3;
    cout << "Total score is " << score1 + score2 + score3 << endl;
    input.close();
    cout << "Done!" << endl;

    return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值