c语言函数名和excel一样吗(函数名称c语言)

Exce表格网 2023-03-02 14:00 编辑:admin 190阅读

1. 函数名称c语言

在C语言中,所有的函数定义,包括主函数main在内,都是平行的。也就是说,在一个函数的函数体内, 不能再定义另一个函数, 即不能嵌套定义。

但是函数之间允许相互调用,也允许嵌套调用。习惯上把调用者称为主调函数。 函数还可以自己调用自己,称为递归调用。main 函数是主函数,它可以调用其它函数,而不允许被其它函数调用。

因此,C程序的执行总是从main函数开始, 完成对其它函数的调用后再返回到main函数,最后由main函数结束整个程序。一个C源程序必须有,也只能有一个主函数main。

2. c语言中函数名

定义函数为double型,就只需要在返回值为double,格式为: double 函数名 (形参列表)

3. c语言函数的命名规范

C语言的函数定义格式是:函数返回值类型函数名(参数列表){//函数体}在使用函数时,要先做声明,格式如下:函数类型函数名称(参数列表);特别地,在函数声明中的参数列表中,不需给出具体的变量名称,但要给出每个变量的类型。

4. 函数名称c语言是什么

加减乘除是常见的数学运算,C语言仍然支持,不过,C语言中的运算符号与数学中的略有不同,请见下表。

C语言中的加号、减号与数学中的一样,乘号、除号不同;另外C语言还多了一个求余数的运算符,就是 %。

下面的代码演示了如何在C语言中进行加减乘除运算:

#include <stdio.h>

int main()

{

int a = 12;

int b = 100;

float c = 8.5;

int m = a + b;

float n = b * c;

double p = a / c;

int q = b % a;

printf("m=%d, n=%f, p=%lf, q=%d\n", m, n, p, q);

return 0;

}

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

输出结果:

m=112, n=850.000000, p=1.411765, q=4

1

1

让数字直接参与运算:

#include <stdio.h>

int main()

{

int a = 12;

int b = 100;

float c = 8.9;

int m = a - b; // 变量参与运算

int n = a + 239; // 有变量也有数字

double p = 12.7 * 34.3; // 数字直接参与运算

printf("m=%d, n=%d, p=%lf\n", m, n, p);

printf("m*2=%d, 6/3=%d, m*n=%ld\n", m*2, 6/3, m*n);

return 0;

}

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

输出结果:

m=-88, n=251, p=435.610000

m*2=-176, 6/3=2, m*n=-22088

1

2

1

2

除法运算

C语言中的除法运算有点奇怪,不同类型的除数和被除数会导致不同类型的运算结果:

当除数和被除数都是整数时,运算结果也是整数;如果不能整除,那么就直接丢掉小数部分,只保留整数部分,这跟将小数赋值给整数类型是一个道理。

一旦除数和被除数中有一个是小数,那么运算结果也是小数,并且是 double 类型的小数。

1

2

3

1

2

3

请看下面的代码:

#include <stdio.h>

int main()

{

int a = 100;

int b = 12;

float c = 12.0;

double p = a / b;

double q = a / c;

printf("p=%lf, q=%lf\n", p, q);

return 0;

}

1

2

3

4

5

6

7

8

9

10

11

12

13

14

1

2

3

4

5

6

7

8

9

10

11

12

13

14

运行结果:

p=8.000000, q=8.333333

1

1

a 和 b 都是整数,a / b 的结果也是整数,所以赋值给 p 变量的也是一个整数,这个整数就是 8。

另外需要注意的一点是除数不能为 0,因为任何一个数字除以 0 都没有意义。

请看下面的代码:

#include <stdio.h>

int main()

{

int a, b;

scanf("%d %d", &a, &b); //从控制台读取数据并分别赋值给a和b

printf("result=%d\n", a / b);

return 0;

}

1

2

3

4

5

6

7

8

9

1

2

3

4

5

6

7

8

9

这段代码用到了一个新的函数,就是 scanf。scanf 和 printf 的功能相反,printf 用来输出数据,scanf 用来读取数据。此处,scanf 会从控制台读取两个整数,并分别赋值给 a 和 b。

程序开头定义了两个 int 类型的变量 a 和 b,程序运行后,从控制台读取用户输入的整数,并分别赋值给 a 和 b,这个时候才能知道 a 和 b 的具体值,才能知道除数 b 是不是 0。像这种情况,b 的值在程序运行期间会改变,跟用户输入的数据有关,编译器根本无法预测,所以就没法及时发现“除数为 0”这个错误。

取余运算

取余,也就是求余数,使用的运算符是 %。C语言中的取余运算只能针对整数,也就是说,% 的两边都必须是整数,不能出现小数,否则编译器会报错。

另外,余数可以是正数也可以是负数,由 % 左边的整数决定:

如果 % 左边是正数,那么余数也是正数;

如果 % 左边是负数,那么余数也是负数。

1

2

3

1

2

3

请看下面的例子:

#include <stdio.h>

int main()

{

printf(

"100%%12=%d \n100%%-12=%d \n-100%%12=%d \n-100%%-12=%d \n",

100%12, 100%-12, -100%12, -100%-12

);

return 0;

}

1

2

3

4

5

6

7

8

9

1

2

3

4

5

6

7

8

9

运行结果:

100%12=4

100%-12=4

-100%12=-4

-100%-12=-4

1

2

3

4

1

2

3

4

在 printf 中,% 是格式控制符的开头,是一个特殊的字符,不能直接输出;要想输出 %,必须在它的前面再加一个 %,这个时候 % 就变成了普通的字符,而不是用来表示格式控制符了。

加减乘除运算的简写

有时候我们希望对一个变量进行某种运算,然后再把运算结果赋值给变量本身,请看下面的例子:

#include <stdio.h>

int main()

{

int a = 12;

int b = 10;

printf("a=%d\n", a);

a = a + 8;

printf("a=%d\n", a);

a = a * b;

printf("a=%d\n", a);

return 0;

}

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

输出结果:

a=12

a=20

a=200

1

2

3

1

2

3

a = a + 8相当于用原来 a 的值(也即12)加上 8,再把运算结果(也即20)赋值给 a,此时 a 的值就变成了 20。

a = a * b相当于用原来 a 的值(也即20)乘以 b 的值(也即10),再把运算结果(也即200)赋值给 a,此时 a 的值就变成了 200。

上述操作,可以理解为对变量本身进行某种运算。

在C语言中,对变量本身进行运算可以有简写形式。假设用 # 来表示某种运算符,那么

a = a # b

1

1

可以简写为:

a #= b

1

1

# 表示 +、-、*、/、% 中的任何一种运算符。

1

1

上例中a = a + 8可以简写为a += 8,a = a * b可以简写为a *= b。

下面的简写形式也是正确的:

int a = 10, b = 20;

a += 10; //相当于 a = a + 10;

a *= (b-10); //相当于 a = a * (b-10);

a -= (a+20); //相当于 a = a - (a+20);

1

2

3

4

1

2

3

4

注意:a #= b 仅是一种简写形式,不会影响程序的执行效率。

5. 函数名称c语言怎么写

C语言中,主函数命名内置为main()。不同的编译器,可以手工指定主函数名称。对于gcc来说,可以用以下的方法:gcc -nostartfiles -e <入口名> xx.c -o xx。

6. c语言函数名称的命名规则

Matlab文件的命名规则与windows下文件命名的规则不同,错误的命名规则将直接导致程序不能运行或错误的结果,而没有任何警告。

首字符不能是数字或下划线:如果首字母是数字或者下划线,MATLAB通常提示找不到该文件。

文件名命名要用英文字符, 不可以包含中文。

文件名不能与matlab的内部函数名相同:m文件名的命名尽量不要是简单的英文单词,最好是由大小写英文/数字/下划线等组成。原因是简单的单词命名容易与matlab内部函数名同名,结果会出现一些莫名其妙的错误;

m文件起名不能有空格:如three phase,应该写成three_phase或者ThreePhase,推荐后者,因为C++也是这样命名的。若需要用两个或以上单词组合作为文件名,各单词必须直接连接组合(可以把每个单词首字母大写以作区分,或者使用下划线)。如random walk,应该写成RandomWalk或者Random_Walk。

文件存储路径一定为英文路径:如果用带有中文的路径,某些情况下会出问题。

M文件名的命名最好是由大小写英文字母/数字/下划线等组成。如果出现相同MATLAB通常会提示。

7. c语言中函数名的命名规则

函数名: abort

功 能: 异常终止一个进程

用 法: void abort(void);

程序例:

#include

#include

int main(void)

{ printf("Calling abort()\n");

abort();

return 0; /* This is never reached */

}

函数名: abs

功 能: 求整数的绝对值

用 法: int abs(int i);

程序例:

#include

#include

int main(void)

{ int number = -1234;

printf("number: %d absolute value: %d\n", number, abs(number)); return 0;

}

函数名: absread, abswirte

功 能: 绝对磁盘扇区读、写数据

用 法: int absread(int drive, int nsects, int sectno, void *buffer); int abswrite(int drive, int nsects, in tsectno, void *buffer);

程序例:

/* absread example */

#include

#include

#include

#include

int main(void)

{ int i, strt, ch_out, sector;

char buf[512];

printf("Insert a diskette into drive A and press any key\n"); getch();

sector = 0;

if (absread(0, 1, sector, &buf) != 0)

{ perror("Disk problem");

exit(1);

}

printf("Read OK\n");

strt = 3;

for (i=0; i<80; i++)

{ ch_out = buf[strt+i];

putchar(ch_out);

}

printf("\n");

return(0);

}

函数名: access

功 能: 确定文件的访问权限

用 法:

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
点击我更换图片