zoukankan      html  css  js  c++  java
  • 自考-高级程序语言设计(C语言)


    1.
    rb:为输入打开一个二进制文件;  
    rb+  指为读写打开一个二进制文件;
    rb为只读,对于不需要进行更新的文件,可以防止用户的错误的写回操作,防止损毁原有数据。具有较高的安全性

    文件使用方式        意 义
    “rt”      只读打开一个文本文件,只允许读数据
    “wt”      只写打开或建立一个文本文件,只允许写数据
    “at”      追加打开一个文本文件,并在文件末尾写数据
    “rb”      只读打开一个二进制文件,只允许读数据
    “wb”       只写打开或建立一个二进制文件,只允许写数据
    “ab”       追加打开一个二进制文件,并在文件末尾写数据
    “rt+”      读写打开一个文本文件,允许读和写
    “wt+”      读写打开或建立一个文本文件,允许读写
    “at+”      读写打开一个文本文件,允许读,或在文件末追加数 据
    “rb+”      读写打开一个二进制文件,允许读和写
    “wb+”      读写打开或建立一个二进制文件,允许读和写
    “ab+”      读写打开一个二进制文件,允许读,或在文件末追加数据

    对于文件使用方式有以下几点说明:
    1. 文件使用方式由r,w,a,t,b,+六个字符拼成,各字符的含义是:
    r(read): 读
    w(write): 写
    a(append): 追加
    t(text): 文本文件,可省略不写
    b(banary): 二进制文件
    +: 读和写

    2. 凡用“r”打开一个文件时,该文件必须已经存在, 且只能从该文件读出。

    3. 用“w”打开的文件只能向该文件写入。 若打开的文件不存在,则以指定的文件名建立该文件,若打开的文件已经存在,则将该文件删去,重建一个新文件。

    4. 若要向一个已存在的文件追加新的信息,只能用“a ”方式打开文件。但此时该文件必须是存在的,否则将会出错。

    5. 在打开一个文件时,如果出错,fopen将返回一个空指针值NULL。在程序中可以用这一信息来判别是否完成打开文件的工作,并作相应的处理。因此常用以下程序段打开文件:

    printf()
    char *st="ChinaBeijing";
    printf("%s",st);
    结果 China
     
    gets(字符数组名);作用:从终端输入一个字符串到字符数组
    #include<stdio.h>
    main()
    {char str1[20];
    gets(str1);//ges函数输入,以Enter结束。
    puts(str1);
    }

    #include<stdio.h>
    main()
    {char str2[20];
    scanf("%s",str2);//"%s"输入,以空格结束。
    puts(str2);
    }
    eg:输入:how are you?
    分析可得:若要处理的字符串包含空格字符,那么必须用gets函数获取这个字符串!

    math.h
    数学函数库,一些数学计算的公式的具体实现是放在math.h里,具体有:
    1、 三角函数
    double sin(double);正弦
    double cos(double);余弦
    double tan(double);正切
    2 、反三角函数
    double asin (double); 结果介于[-PI/2,PI/2]
    double acos (double); 结果介于[0,PI]
    double atan (double); 反正切(主值),结果介于[-PI/2,PI/2]
    double atan2 (double,double); 反正切(整圆值),结果介于[-PI,PI]
    3 、双曲三角函数
    double sinh (double);
    double cosh (double);
    double tanh (double);
    4 、指数与对数
    double frexp(double value,int *exp);这是一个将value值拆分成小数部分f和(以2为底的)指数部分exp,并返回小数部分f,即f*2^exp。其中f取值在0.5~1.0范围或者0。
    double ldexp(double x,int exp);这个函数刚好跟上面那个frexp函数功能相反,它的返回值是x*2^exp
    double modf(double value,double *iptr);拆分value值,返回它的小数部分,iptr指向整数部分。
    double log (double); 以e为底的对数
    double log10 (double);以10为底的对数
    double pow(double x,double y);计算以x为底数的y次幂
    float powf(float x,float y); 功能与pow一致,只是输入与输出皆为浮点数
    double exp (double);求取自然数e的幂
    double sqrt (double);开平方
    5 、取整
    double ceil (double); 取上整,返回不比x小的最小整数
    double floor (double); 取下整,返回不比x大的最大整数,即高斯函数[x]
    6 、绝对值
    int abs(int i); 求整型的绝对值
    double fabs (double);求实型的绝对值
    double cabs(struct complex znum);求复数的绝对值
    7 、标准化浮点数
    double frexp (double f,int *p); 标准化浮点数,f = x * 2^p,已知f求x,p (x介于[0.5,1])
    double ldexp (double x,int p); 与frexp相反,已知x,p求f
    8 、取整与取余
    double modf (double,double*); 将参数的整数部分通过指针回传,返回小数部分
    double fmod (double,double); 返回两参数相除的余数
    9 、其他
    double hypot(double x,double y);已知直角三角形两个直角边长度,求斜边长度
    double ldexp(double x,int exponent);计算x*(2的exponent次幂)
    double poly(double x,int degree,double coeffs []);计算多项式
    int matherr(struct exception *e);数学错误计算处理程序
    注意事项没有现成的cot三角函数,可以使用tan(PI/2-x)来实现
    double atan2(double y,double x);取值范围在(PI,PI)之间;这是一个不太常见的函数,主要用来返回y/x的反正切值。
    强调一点,1-3类 传参都是针对以弧度表示的数值,非角度表示的数值。
    对于一般的对数求解,考虑利用数学上的对数转换来实现。
    两个函数比较容易混淆,介绍一种方法,ceil与floor首字母分别是c与f,取值在c与f之间,所以对于ceil函数取最小整数,对于floor函数取最大整数。
    关于fmod:考虑到%只适用与整型数据,这里提出一个专门针对实型数据的取余运算的函数。
    int rand(void) 用这函数的时候记得要给随机种子哦,要不得出的不是真正的随机数.产生随机种子可以用srand((unsigned int)time(NULL));这就是由时间产生的随机种子了。

  • 相关阅读:
    从数据仓库系统对比看Hive发展前景
    Greenplum技术浅析
    MySQL索引背后的数据结构及算法原理zz
    超详细单机版搭建hadoop环境图文解析
    ActionScript 3.0 Step By Step系列(六):学对象事件模型,从点击按扭开始
    ActionScript 3.0 Step By Step系列(五):走在面向对象开发的路上,以类为基础去思考编程问题
    ActionScript 3.0 Step By Step系列(八):动态的数据展现源于灵活的数据绑定
    ActionScript 3.0 Step By Step系列(七):使用XML和XMLList类处理XML数据
    高质量的开源Flex UI组件库项目(FlexLib)
    什么是回调 CallBack
  • 原文地址:https://www.cnblogs.com/byfei/p/14104495.html
Copyright © 2011-2022 走看看