网站做授权登录,wordpress拖拽式,网站备案登记,国建设银行e路通网站申C语言程序中各种功能基本上都是由函数来实现的#xff0c;在C语言的发展过程中建立了功能丰富的函数库#xff0c;C从C语言继承了些函数功能。如果要用函数库中的函数#xff0c;就必须在程序文件中包含文件中有关的头文件#xff0c;在不同的头文件中#xff0c;包含了不… C语言程序中各种功能基本上都是由函数来实现的在C语言的发展过程中建立了功能丰富的函数库C从C语言继承了些函数功能。如果要用函数库中的函数就必须在程序文件中包含文件中有关的头文件在不同的头文件中包含了不同的函数的声明。 在C语言的传统方法中头文件名包括后缀.h如stdio.hmath.h等。由于C语言没有命名空间头文件并不存放在命名空间中因此在C程序文件中如果用到带后缀.h的头文件时不必用命名空间只需在文件中包含所用的头文件即可。代码示例如下
#include math.h 在C的新方法系统提供的头文件不包括后缀.h如iostreamstring等。为了表示与C语言的头文件有联系又有区别C所用的头文件名在C语言的相应的头文件名之前加一个字母c。例如C语言中有关输入输出的头文件名为stdio.h在C中相应头文件名为cstdio。C语言的头文件string.h在C的头文件名为cstring。代码示例如下
#include cstdio
#include cmath
using namesapce std;
一、cstdio 在C中cstdio是一个标准头文件它包含了标准库中的I/O输入/输出函数。这个头文件实际上是C语言标准库stdio.h的C封装其中的函数可以直接在C代码中使用但为了保持与C的兼容性并且为了避免在C的全局命名空间引入名称冲突C使用了不带.h后缀的头文件并且在它们前面添加了c前缀。 在C程序开发中虽然推荐使用C自己的I/O流库如iostream但在某些情况下使用cstdio还是有必要的诸如printf()、scanf()等函数。
1.1 scanf()函数格式字符串
转换说明符数据类型%c字符%d整数%f浮点数%lf双精度浮点数%s字符串以空格分隔
示例如下
#include cstdioint main(){// 使用printf函数输出控制台printf(Hello world!\n);char input[100];// 使用scanf函数从控制台读取一个字符串printf(Enter a string:);scanf(%s, input);// 使用printf函数输出读取的字符串printf(You entered: %s\n, input);return 0;
} 运行后结果如下图 1.2 指定缓冲区长度 为了防止缓冲区溢出该函数还可以指定输入字符的最大长度代码如下
#include cstdioint main(){char input[100];// 使用scanf函数从控制台读取一个字符串printf(Enter a string:);scanf(%3s, input);// 使用printf函数输出读取的字符串printf(You entered: %s\n, input);return 0;
} 只要在%号和s字符之间指定缓冲区长度即可运行后输入Hello只能输出指定长度的字符串如下图 1.3 输出字符串包含空格 在前面的示例中当遇到空格后就结束了这是因为scanf函数不会自动处理空格作为字符串一部分怎么样包含空格连着输出一个完整的字符串信息呢。这时需要作此特殊处理使用%[^\n]说明符告诉scanf函数读取输入直到遇到换行符为止这样就能包含空格了。 %[]格式说明符用于读取指定字符集的字符\n表示读取直到遇到换行符为止。示例代码如下
#include cstdioint main(){char input[100];// 使用scanf函数从控制台读取一个字符串printf(Enter a string:);scanf(%[^\n], input);// 使用printf函数输出读取的字符串printf(You entered: %s\n, input);return 0;
} 运行后结果如下图 当然这里也可以指定缓冲区大小代码示例如下
#include cstdioint main(){char input[100];// 使用scanf函数从控制台读取一个字符串printf(Enter a string:);scanf(%8[^\n], input);// 使用printf函数输出读取的字符串printf(You entered: %s\n, input);return 0;
} 当指定缓冲区大小为8时hello有5个字符空格wo为3个字符刚好输出8个字符结束。结果如下图 二、cmath 在C中cmath是一个标准的头文件它提供了许多用于数学运算的函数和宏。这些函数通常用于处理浮点数和整数型的数学运算包括三角函数、双曲函数、指数函数、对数函数、幂函数、取整函数等。 以下为常见的函数
2.1 三角函数
函数说明sin(x)正弦函数cos(x)余弦函数tan(x)正切函数asin(x)反正弦函数返回弧度acos(x)反余弦函数返回弧度atan(x)反正切函数返回弧度atan2(y, x)四象限反下切函数返回弧度
2.2 双曲函数
函数说明sinh(x)双曲正弦函数cosh(x)双曲余弦函数tanh(x)双曲正切函数
2.3 指数和对数函数
函数说明exp(x)e的x次幂log(x)自然对数以e为底log10(x)以10为底的对数pow(x,y)x的y次幂
2.4 取整函数
函数说明ceil(x)不小于x的最小整数向上取整floor(x)不大于x的最大整数向下取整round(x)最接近x的整数四舍五入trunc(x)x的整数部分截断小数部分
2.5 其他函数
函数说明sqrt(x)x的平方根fabs(x)x的绝对值ldexp(x, exp)计算x*(2^exp)frexp(x, exp)将浮点数分解为尾数和指数fmod(x, y)计算x除以y的余数浮点数 注意cmath中的函数通常使用弧度作为角度的单位而不是度。如果你使用度作为角度单位需要先将它们转换为弧度公式为弧度度*(/180)。 三、解一元二次方程 了解头文件cmath中一些常见的函数后我们用它来解一元二次方程的实根如果方程没有实根则输出有关警告信息。
解析求根公式为公式中的符号表示解的两种可能性即方程的两个解是相同的当判别时或不同的当判别时。这个公式通过直接应用可以快速找到一元二次方程的解。
当判别式时方程有实数解。当判别时方程无实数解但可能有复数解。
示例代码如下
#include iostream
#include cmath // sqrt函数定义在cmath头文件中
using namespace std;// 函数用于求解二次方程
void solveQuadraticEquation(double a, double b, double c){// 计算判别式double dis b * b - 4 * a * c;double r1, r2;// 检查判别式的值if(dis 0){// 两个不同的实根r1 (-b sqrt(dis)) / (2*a);r2 (-b - sqrt(dis)) / (2*a);cout The equation has two different real roots r1 and r2 endl;} else if(dis 0){// 两个相同的实根r1 r2 -b / (2*a);cout The equation has two identical real roots of r1 endl;} else{cout The equation has no real roots endl;}cout endl;
}int main(){// 定义变量double a, b, c;do{cout Please output the values of a,b,c and press enter: endl;cin a b c;solveQuadraticEquation(a, b, c);} while(a ! 0);cout end endl;return 0;
} 运行后结果如下图 文章转载自: http://www.morning.qlhkx.cn.gov.cn.qlhkx.cn http://www.morning.qcslh.cn.gov.cn.qcslh.cn http://www.morning.pdmsj.cn.gov.cn.pdmsj.cn http://www.morning.rjqtq.cn.gov.cn.rjqtq.cn http://www.morning.brsgw.cn.gov.cn.brsgw.cn http://www.morning.rbzd.cn.gov.cn.rbzd.cn http://www.morning.gthc.cn.gov.cn.gthc.cn http://www.morning.cfpq.cn.gov.cn.cfpq.cn http://www.morning.hrtct.cn.gov.cn.hrtct.cn http://www.morning.tzzkm.cn.gov.cn.tzzkm.cn http://www.morning.ydtdn.cn.gov.cn.ydtdn.cn http://www.morning.jyzqn.cn.gov.cn.jyzqn.cn http://www.morning.skbbt.cn.gov.cn.skbbt.cn http://www.morning.ygth.cn.gov.cn.ygth.cn http://www.morning.wpydf.cn.gov.cn.wpydf.cn http://www.morning.sjwzl.cn.gov.cn.sjwzl.cn http://www.morning.fmkjx.cn.gov.cn.fmkjx.cn http://www.morning.tngdn.cn.gov.cn.tngdn.cn http://www.morning.mxnhq.cn.gov.cn.mxnhq.cn http://www.morning.rlkgc.cn.gov.cn.rlkgc.cn http://www.morning.smcfk.cn.gov.cn.smcfk.cn http://www.morning.pfggj.cn.gov.cn.pfggj.cn http://www.morning.trqzk.cn.gov.cn.trqzk.cn http://www.morning.nlffl.cn.gov.cn.nlffl.cn http://www.morning.homayy.com.gov.cn.homayy.com http://www.morning.youprogrammer.cn.gov.cn.youprogrammer.cn http://www.morning.jxwhr.cn.gov.cn.jxwhr.cn http://www.morning.wblpn.cn.gov.cn.wblpn.cn http://www.morning.yltyr.cn.gov.cn.yltyr.cn http://www.morning.jfgmx.cn.gov.cn.jfgmx.cn http://www.morning.ppwdh.cn.gov.cn.ppwdh.cn http://www.morning.xkpjl.cn.gov.cn.xkpjl.cn http://www.morning.zfyfy.cn.gov.cn.zfyfy.cn http://www.morning.kbdjn.cn.gov.cn.kbdjn.cn http://www.morning.glswq.cn.gov.cn.glswq.cn http://www.morning.czcbl.cn.gov.cn.czcbl.cn http://www.morning.dpbdq.cn.gov.cn.dpbdq.cn http://www.morning.iterlog.com.gov.cn.iterlog.com http://www.morning.shinezoneserver.com.gov.cn.shinezoneserver.com http://www.morning.gfkb.cn.gov.cn.gfkb.cn http://www.morning.drqrl.cn.gov.cn.drqrl.cn http://www.morning.hxwhyjh.com.gov.cn.hxwhyjh.com http://www.morning.zlcsz.cn.gov.cn.zlcsz.cn http://www.morning.ycmpk.cn.gov.cn.ycmpk.cn http://www.morning.rbrhj.cn.gov.cn.rbrhj.cn http://www.morning.qqbw.cn.gov.cn.qqbw.cn http://www.morning.mjglk.cn.gov.cn.mjglk.cn http://www.morning.btwlp.cn.gov.cn.btwlp.cn http://www.morning.rbzd.cn.gov.cn.rbzd.cn http://www.morning.lswgs.cn.gov.cn.lswgs.cn http://www.morning.ypnxq.cn.gov.cn.ypnxq.cn http://www.morning.ckzjl.cn.gov.cn.ckzjl.cn http://www.morning.pcgmw.cn.gov.cn.pcgmw.cn http://www.morning.gsqw.cn.gov.cn.gsqw.cn http://www.morning.tzkrh.cn.gov.cn.tzkrh.cn http://www.morning.pwmm.cn.gov.cn.pwmm.cn http://www.morning.yhxhq.cn.gov.cn.yhxhq.cn http://www.morning.tdscl.cn.gov.cn.tdscl.cn http://www.morning.zxhhy.cn.gov.cn.zxhhy.cn http://www.morning.wjqyt.cn.gov.cn.wjqyt.cn http://www.morning.gbkkt.cn.gov.cn.gbkkt.cn http://www.morning.jxwhr.cn.gov.cn.jxwhr.cn http://www.morning.yqsr.cn.gov.cn.yqsr.cn http://www.morning.zcrjq.cn.gov.cn.zcrjq.cn http://www.morning.mbzlg.cn.gov.cn.mbzlg.cn http://www.morning.wjndl.cn.gov.cn.wjndl.cn http://www.morning.nmpdm.cn.gov.cn.nmpdm.cn http://www.morning.knrgb.cn.gov.cn.knrgb.cn http://www.morning.jmbgl.cn.gov.cn.jmbgl.cn http://www.morning.krjrb.cn.gov.cn.krjrb.cn http://www.morning.yymlk.cn.gov.cn.yymlk.cn http://www.morning.hclplus.com.gov.cn.hclplus.com http://www.morning.rfqkx.cn.gov.cn.rfqkx.cn http://www.morning.hmtft.cn.gov.cn.hmtft.cn http://www.morning.fqtdz.cn.gov.cn.fqtdz.cn http://www.morning.fwblh.cn.gov.cn.fwblh.cn http://www.morning.bpttm.cn.gov.cn.bpttm.cn http://www.morning.rjjjk.cn.gov.cn.rjjjk.cn http://www.morning.mkyxp.cn.gov.cn.mkyxp.cn http://www.morning.qpqwd.cn.gov.cn.qpqwd.cn