#include <math.h>
int main()
{
int a=0,b=0,c=0
float ave =0
scanf("%d%d%d",&a,&b,&c)
ave = (float)((a+b+c)/(3*1.0))
printf("Average of %d、%d and %d is %.2f\n",a,b,c,ave)
}
22 33 44
Average of 22、33 and 44 is 33.00
Press any key to continue
C语言中直接提供的是e为底的自然对数log,和以10为底的常用对数log10,其他对数写个函内数就可以。
#include <stdio.h>
#include <math.h>
double loga(double n, double base)
int main (void)
{
double a, b, c
a = log(exp(1))
b = log10(10)
c = loga(100, 5)
printf("%lf %lf %lf", a, b, c)
}
double loga(double n, double base)
{ return log(n) / log(base)}
扩展资料:
如果一个变量名后面跟着一个有数字的中括号,这个声明就是数组声明。字符串也是一种数组。它们以ASCII的NULL作为数组的结束。要特别注意的是,中括号内的索引值是从0算起的。
C语言的字符串其实就是以'\0'字符结尾的char型数组,使用字符型并不需要引用库,但是使用字符串就需要C标准库里面的一些用于对字符串进行操作的函数。它们不同于字符数组。使用这些函数需要引用头文件<string.h>。
C程序中函数的数目实际上是不限的,如果说有什么限制的话,那就是,一个C程序中必须至少有一个函数,而且其中必须有一个并且仅有一个以main为名的函数,这个函数称为主函数,整个程序从这个主函数开始执行。
比较特别的是,比特右移(>>)运算符可以是算术(左端补最高有效位)或是逻辑(左端补 0)位移。例如,将 11100011 右移 3 比特,算术右移后成为 11111100,逻辑右移则为 00011100。因算术比特右移较适于处理带负号整数,所以几乎所有的编译器都是算术比特右移。
C语言是用来编写系统的。最开始,人们手里除了机器码就是汇编,没有别的语言。但是汇编有很多硬件相关的特性,可移植性差。贝尔实验室要解决这一问题,就研发了C语言。
C语言可以跨平台,一份代码,配上不同的编译器就可以在各大电脑上运行。除此之外,C语言效率惊人,在某些情况中,如果汇编水平中等以下,编出来的汇编甚至没有C语言生成的机器码快。
现在,NOIP(现更名为CSP-J和CSP-S)仅允许初赛和复赛使用三种语言:Pascal、C、C++,C语言的重要性不言而喻。
虽然迈入了互联网时代,但是C语言的地位也没有低到可以忽略。C语言在对空间和时间要求较高的设备(如嵌入式设备)中发挥着重要功能,也可以编写各大语言的编译器,有着比较重要的地位。