C语言的函数

函数:

  常用函数:

      printf函数:

          介绍:用来输出信息语句的函数

          格式: printf("格式控制字符串",输出项列表);

          格式字符:

              1): %d 输出十进制整数

                 %md 设置域宽

                     m:可以为正负

                        如果要输出的位数大于了m,则按照实际域宽进行输出

                       否则m大于0 则从左边补位 ;m小于0 则从右边补位

                 %0md

                    不足的部分用0进行补位

              2): %f 输出一个实数类型的数据

                 %f 默认显示6位小数,如果精度要求7位以上则使用 double进行存储实数类型,精度为15位

                 %m.nf

                     m:标示总的位数

                     n:标示小数点后的位数

                     %-6.2f  负号表示从右边补位

              3): %c 输出一个字符

              4): %s 输出一个字符串

              5): %o 把一个数,以八进制的形式进行输出

              6): %x 把一个数,以十六进制的形式进行输出

              7): %p 输出一个地址(内存地址)

      scanf函数 : 阻塞式函数

        scanf函数包含在标准"输入输出"头文件"stdio.h"中,用于接收键盘输入的内容

        格式: scanf("格式控制字符串",输入项地址列表);

                输入项地址列表: 需要接收数据的变量地址,这些输入项与格式控制字符串在类型和数量上相对应,当有多个输入项时,各个地址名之间用 "逗号" 分隔,另:输出格式和变量类型要保持一致(一个变量的地址可以通过地址运算符& 得到)

        scanf函数格式控制符:

          i  输入一个有符号或无符号的十进制、八进制、十六进制整数

          u  输入一个无符号十进制整数

          f、e/E、g/G   输入一个小数形式或指数形式的浮点数

          注意: %f 这样是可以的 ,%m.nf 这样在scanf中是不可以的

        scanf注意事项:

          1.scanf函数当遇到回车的时候,会结束执行

          2.接收单个变量值的时候,在输入值之前,如果我们输入了空格、回车、tab,都会被忽略

             scanf("%d%d",&a,&b); 要求我们在键盘上输入的时候,输入两个整数,并且以空格或者回车隔开

                         输入完第一个数以后,如果中间输入空格、回车、tab都会被忽略

          3.%*d 其中 *代表跳过一个整数

          4.\n 关于scanf中,尽量不要使用\n,如果不小心使用了,输入值以后随便输入一个内容,那么需要原样输入\n

        scanf函数原理:

          "已知问题:整形和字符混合输入"

          %d%c%d

          运行原理:

              1.当用户输入内容后,用户输入的内容会被存放在scanf的输入缓冲区中,然后canf函数会根据格式控制的字符的要求,从输入缓冲区依次取它想要的内容,如果缓冲区中取得内容和我们的格式要求一致,那么就把值存放到变量中;如果格式不一致,则不修改变量的值

              2.如果scanf缓冲区还有内容,那么scanf不会提示我们输入内容

    

  递归函数/递归调用:

时间: 2024-10-22 19:18:15

C语言的函数的相关文章

[C/C++基础] C语言常用函数sprintf和snprintf的使用方法

Sprintf 函数声明:int sprintf(char *buffer, const char *format [, argument1, argument2, -]) 用途:将一段数据写入以地址buffer开始的字符串缓冲区 所属库文件: <stdio.h> 参数:(1)buffer,将要写入数据的起始地址:(2)format,写入数据的格式:(3)argument:要写的数据,可以是任何格式的. 返回值:实际写入的字符串长度 说明:此函数需要注意缓冲区buffer溢出,要为写入的arg

C语言strlen()函数用法

C语言strlen()函数:返回字符串的长度 头文件:#include <string.h> strlen()函数用来计算字符串的长度,其原型为:unsigned int strlen (char *s);  s为指定的字符串 eg: #include<stdio.h> #include<string.h> int main() { char *str1 = "http://see.xidian.edu.cn/cpp/u/shipin/"; char

C语言_函数

函数 1.函数构成 int main(int argc, const char * argv[]) { // insert code here... return 0; } 返回值类型  函数名(函数参数) { 函数体语句: return 返回值: } 2.函数分类 1)标准函数 由官方或第三方库提供的函数,可以直接调用,无需实现: 2)自定义函数 由程序员自己实现的函数: 3.编写函数的步骤 1)声明函数 写在头文件 2)实现函数 写在原文件 3)调用函数 C阶段,一般在主函数调用 [注意事项

C语言学习-函数和递归函数

C源程序是由函数组成的,有且只有一个主函数(main()函数). 一.函数 1.自定义函数的书写格式: 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,…) { 函数体 }例如: 1 include <stdio.h> 2 void test(); 3 4 int main() { 5 test(); 6 return 0; 7 } 8 9 void test() { 10 11 printf("hello world!"); 12 13 } 2.定义函数的

C语言基础 函数--思想的体现

1.C语言由函数组成,main函数又称主函数,是程序的入口. 1.1函数定义:    1.1.1    格式:        返回值类型 函数名(形式参数列表)        {            函数体        }     1.1.2    函数名:  不允许相同 1.1.3    参数注意点:        1.形式参数: 定义函数时函数名后面括号中的参数,简称形参        2.实际参数: 调用函数时传入的具体数据,简称实参        3.实参个数必须等于形参个数    

C语言中函数和指针的参数传递

最近写二叉树的数据结构实验,想用一个没有返回值的函数来创建一个树,发现这个树就是建立不起来,那么我就用这个例子讨论一下c语言中指针作为形参的函数中传递中隐藏的东西. 大家知道C++中有引用的概念,两个数据引用同一个数据,那么更改任意的一个都相当于更改了本体,那么另一个数据所对应的值也会改变,可是C中是没有这个概念的.所以就产生了一些东西.和我们本来想的有差别. 一.明确C语言中函数的入口: C语言中函数的形参负责接收外部数据,那么数据究竟怎么进入函数的呢,其实我们在函数体内操作的形参只是传递进来

从头开始-05.C语言中函数

函数: 完成特定功能代码段 特点:函数只有调用的时候才会执行 定义格式:返回值类型 函数名称(形参类型 形参名称,...){ 语句; ...  } 函数参数 形式参数:在定义函数的时候,函数名后面小括号中的参数 实际参数:在函数调用的时候,函数名后面小括号中的参数 注意点: 形参与实参必须一一对应 实参与形参的类型必须一致 基本数据类型作为函数参数传递是值传递 组作为函数参数传递是地址传递 指针作为函数参数传递是地址传递 结构体作为函数参数传递是值传递 返回值: return 作用: 1.结束函

C语言之函数可变参数

先上一段代码: #include<cstdarg> #include<iostream> #include<string> using namespace std; void error(char* format,...){//至少要有一个参数,后边的...表示参数可变 va_list ap; int d,flag; char c, *s; va_start(ap,*format);//从args参数开始后面都是可变参数,va_start,va_end都为宏 while

Go语言之函数方法

在Go语言中,函数和方法不太一样,有明确的概念区分.在其他语言中,比如Java,一般来说,函数就是方法,方法就是函数.但是在Go语言中,函数是指不属于任何结构体.类型的方法.也就是说,函数是没有接收者的:而方法是有接收者的.我们说的方法要么是属于一个结构体的,要么属于一个新定义的类型的. 函数 函数和方法,虽然概念不同,但是定义非常相似.函数的定义声明没有接收者,所以我们直接在Go文件里.Go包之下定义声明即可. func main() {     sum := add(1, 2)     fm

【C语言】函数指针与回调函数

在C语言中:指针是C语言的特色,有着各种各样的指针,普通的变量指针,常量指针,数组指针,指针数组,函数指针,指针函数.我们就讲一下函数指针与回调函数吧 首先关于函数指针,其实很简单. 对于一个函数指针来说,顾名思义,就是一个指向函数的指针,需要知道的是,对于指针而言,他总是存储一块地址,地址里面有着一个,一组,或者一块数据,在函数中,函数的存储是放在代码段的,每个函数都有着一个函数首地址,调用了这个地址相当于调用的这个函数. 具体的可以观看我的这篇博客,其中就通过在内存阶段改变栈帧返回值,成功的