C语言基础之C语言程序和函数及system函数的运用
文章目录
- 一、C语言基础
- (1)c语言程序
- 1.内容
- 2.简单c语言程序
- (2)函数
- 1.内容
- 2.种类
- 3.函数类型
- 4.有无返回值类型函数
- **”对于无返回类型的“**
- **“对于有返回类型的”**
- 总结
- 5.函数名
- 内容
- 要求
- 规则
- 6.有无参数类型函数
- 内容
- 有参类型
- 7函数体
- 内容
- (3)system函数
- 1.内容
- 2.DOS操作命令
- 3.color命令
一、C语言基础
(1)c语言程序
1.内容
C语言储蓄主要包含:预处理器指令、函数、变量、语句、表达式、注释等部分
2.简单c语言程序
#include <stdio.h>//预处理器指令
int main ()//函数(主函数)
{printf("hello,world!\n");//printf函数return 0 ;//终止函数,返回值为0
}
(2)函数
1.内容
在知乎中,对于函数的定义是一个功能的集合,它可以根据输入完成特写的功能,并将结果输出,有时候函数只是为了实现一些特写功能而并不一定要有输入或输出。
2.种类
函数一般分为两种:库函数和自定义函数,库函数是c语言自带的函数,比如对于字符串的strcmp()等,而自定义函数是我们自己定义的函数。常见的库函数有IO函数、字符串操作函数、字符操作函数、内存操作函数、时间/日期函数、数学函数、其他库函数。
注意:使用库函数时必须包含#include对应的头文件
就上面那串简单的代码
除了printf可以分为int(函数类型)、main(函数名)、()、{}
3.函数类型
对于上面代码int对应的含义是整形,并作为函数类型在使用。常用的类型有short、int、long、char、float、double(c++中还有bool类型),它们也都可以作为函数的类型使用,含义分别如下表。
函数类型 | 含义 |
---|---|
short | 短整形 |
long | 长整型 |
char | 字符 |
float | 浮点型 |
double | 双精度浮点型 |
bool | 布尔型(判断真假) |
除了这几种之外还有一种类型是void类型;我们按照函数是否是void类型(是否有返回值)可以把函数分为两种:1.void — 无返回值类型2.不是void的情况 — 有返回值类型
4.有无返回值类型函数
我们来举个例子,并将代码运行来进行理解。
”对于无返回类型的“
#include <stdio.h>
void main()
{printf("hello world\n");
}
运行结果如下图
“对于有返回类型的”
#include <stdio.h>
int main ()
{printf("hello,world!\n");return 0 ;
}
运行结果如下图
对于以上两种方式敲出来的代码所运行的结果是一致的!
总结
对于两种类型的函数的本质区别就是少了返回值,但不一定没有return,return目的是结束函数。
5.函数名
内容
可以字母,数字,下划线混合使用的名称被称为函数名
要求
- 只能以字母或下划线开始;
- 不能以数字开始;
- 一般小写;
- 关键字不允许用(比如说int float 之类的为保留字不允许用);
但我们一般推荐函数名的命名规则为:
规则
1.根据名称来知道函数的意义
2.自定义函数函数名首字母尽量大写(库函数里的函数名都是以小写字母定义,为了区分库函数和自定义函数,避免冲突)。
6.有无参数类型函数
内容
在()内,按是否有参数分为两种函数;一般可以分为有参类型和无参类型。有参类型函数指的是在该函数被调用的时候,主调函数通过参数向里面传递了数据。无参类型函数很好理解,就是不向 函数内部传递数据,因为没有参数,无法获得返回值。主要介绍有参类型。
有参类型
先用简单的代码来做为一个例子
函数数据类型 函数名字(参数1, 参数2, 参数3,... , 参数n)
{调用语句块;
}
函数的数据类型要根据自己所赋的值来定义,如果需要定义为整数类型则需用到,short、int、long。其他同理
在此自定义函数的()内的参数被称为形式参数,即为形参。而在调用函数里面,括号后面的参数叫做实际参数,即为实参,它可以是常量,变量,表达式
int Define(int a)//括号内是形参 int a
{a = 114514;
}
void main()
{//调用函数时候形参必须和实参类型一致int a = 1919810;printf("%d\n", a);//括号内是实参 a
}
1:在调用的时候,调用函数向参数传递的是值,在调用结束后,该值不会改变。
2:函数只有被调用后,系统才会给它分配内存。
3:调用结束后,系统给他分配的内存单元会立即被释放,但调用函数中的值不会改变
4:在主调函数把值传递给被调用函数后,被调用的函数里面可以直接使用这个值,但是要记住,值的数据类型要和参数的数据类型一一对应。
在调用函数的时候,从形参到实参发生的是值传递;也就是把实参的值拷贝一份副本给形参,在形参里面改变值并不会反向影响实参的值,也就是说这里的值是单向传递的:
就上面那串代码所打印的结果会是什么呢?让我们将它运行下吧!看下图
最好打印出来的结果是实参也就是printf函数里面的1919810,因为a=114514只能在Define内才能够成功生效,而不能在printf内生效。
7函数体
内容
这个很简单,就是在{}内的内容被称为函数体,主要是用来组成函数的定义。
(3)system函数
1.内容
能够发出一点DOS命令的函数,用法为 int system(char *command); 目前system函数被收录在了标准c库中,可以直接调用。比如我们看下以下的例子。
#include<stdio.h>
#include<stdlib.h>//引用system函数的头文件
int main()
{printf("system学习\n");system("dir");//显示一共目录中的文件和子目录
return 0;
}
对于以上的例子打印出来的结果如下图所示
对此,成功实现了dos命令中的dir,此命令也可也在cmd内进行执行,执行方法就是输入dir回车即可。常见的dos命令放在下图了。
2.DOS操作命令
以上是一些DOS操作命令,对于DOS操作命令来说,它有很多有趣的地方,比如让电脑定时关机还有让电脑删除某些文件以及可以让电脑打开计算机还要一些应用程序等等功能。
3.color命令
内容
可以利用此命令将命令框内的颜色进行改变,用法为system(“color xx”)颜色属性由两个十六进制数字指定 – 第一个为背景,第二个则为前景。每个数字可以为以下任何值之一。常见的如下所示
颜色 | 数字 |
---|---|
黑色 | 00 |
蓝色 | 01 |
绿色 | 02 |
湖蓝色 | 03 |
红色 | 04 |
紫色 | 05 |
黄色 | 06 |
白色 | 07 |
灰色 | 08 |
淡蓝色 | 09 |
淡绿色 | A |
淡浅绿色 | B |
淡红色 | C |
淡紫色 | D |
淡黄色 | E |
注意:一个程序中永远是最后一个system(“color xx”)起作用
C语言基础之C语言程序和函数及system函数的运用相关推荐
- c语言中aver是什么意思_嵌入式C语言基础编程—5年程序员给你讲函数,你真的懂函数吗?...
本文主要讲述的内容: 1函数概述 2函数定义的一般形式 3函数的参数和函数的值 3.1形式参数和实际参数 3.2函数的返回值 4函数的调用 4.1函数调用的一般形式 4.2函数调用的方式 4.3被调用 ...
- R语言基础教程6:程序设计基础
R语言基础教程1:数据类型 R语言基础教程2:散点图 R语言基础教程3:曲线图.误差线和图例 R语言基础教程4:柱形图 R语言基础教程5:图形页面排版 R语言基础教程6:程序设计基础 R语言基础教程7 ...
- 我的全栈之路-C语言基础之C语言概述与开发环境搭建
我的全栈之路-C语言基础之C语言概述与开发环境搭建 我的全栈之路 1.1 信息技术发展趋势 1.2 浅谈计算机系统架构 1.2.1 计算机系统架构概述 1.2.2 计算机硬件系统 1.2.2 计算机软 ...
- Python|装饰器|执行时间|递归|动态属性|静态方法和类|继承和多态|isinstance类型判断|溢出|“魔法”方法|语言基础50课:学习记录(6)-函数的高级应用、面向对象编程、进阶及应用
文章目录 系列目录 原项目地址: 第16课:函数的高级应用 装饰器(记录执行时间的例子) 递归调用 简单的总结 第17课:面向对象编程入门 类和对象 定义类 创建和使用对象 初始化方法 打印对象 面向 ...
- 计算机编程c 语言实型数据,C语言-基础教程-C语言实型数据
C语言-基础教程-C语言实型数据 分类:计算机等级 | 更新时间:2016-07-08| 来源:转载 2.4.1 实型常量 实型常量又称浮点常量,是一个十进制表示的符号实数.符号实数的值包括整数部分. ...
- c语言教程变量,C语言-基础教程-C语言常量与变量
考试大计算机等级站整理: 2.2.1 标识符命名 在C语言中,标识符是对变量.函数标号和其它各种用户定义对象的命名.标识符的长度可以是一个或多个字符.绝大多数情况下,标识符的第一个字符必须是字母或下划 ...
- C语言基础-第一个C程序
之前在大学期间学过C语言的基础,后来主要方向是java,就没继续深入学习C语言.但是C语言作为一个基础语言,对开发有着很大的帮助.最近又开始用业余时间系统的学习C语言. 首先,简单的介绍一下C语言 C ...
- 01_Go语言基础学习_Golang语言特性、环境搭建、第一个Go程序、包
1. Golang语言特性: 垃圾回收: 1.内存自动回收,再也不需要开发人员管理内存: 2.开发人员专注业务实现,降低了心智负担 : 3.只需要new分配内存,不需要释放 天然并发: 1.从语言层面 ...
- 程序员c语言基础,《软考程序员》C语言基础
程序员(英文Programmer)是从事程序开发.维护的专业人员.一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国.软件从业人员分为初级程序员.高级程序员.系统分析员 ...
最新文章
- 数据库正常运行,突然变慢的解决思路
- androidEditTextinputType及android:imeOptions=”actionDone”(转)
- linux一键重装系统脚本,一键重装CentOS纯净版系统shell脚本
- 为了使界面组件更圆滑,Swing,且跨系统
- 北大计算机大神,北大数学大神有多强?简直叹为观止
- 如何解决两个相邻的span中间有空隙
- Git for Windows 国内下载站
- Linux安装Nessus
- jdi屏幕斜纹_荣耀V10屏幕有斜纹问题,有人甚至因此退货,真的这么严重?
- 【数据结构】----C语言实现栈操作
- 为什么有的老板可以一整天都待在他自己的办公室里不出来
- 解决办法:std没有成员initializer_list
- 【论文概述】AVOD (2018)
- ICD3 Target Device ID (00000000)
- 每日英语Daily English
- Python 实现多个Excel工作表绘制曲线图
- android 沉浸式_【沉浸式体验】从民俗音乐到绘画雕塑,他们玩了这么多花样!...
- QNX 7.1 交叉编译 boost 1.76
- 手机应用使用情况监控统计APP
- 修改CPAN配置文件
热门文章
- 控制台的html如何复制,如何复制css代码
- 网易单季净利76亿:丁磊闷声发大财 可获近10亿元派息
- dockers安装的整体步骤
- 达拉崩吧java,当剽窃贼遇见《达拉崩吧》,网友:这届玩家过分沙雕,惹不起...
- 我眼中的亚米级定位技术 (浅谈一下在交通出行方面的的应用)
- Matlab自适应均线_Matlab量化交易策略之 均线打分策略(附源码)
- Spring——依赖注入(DI)详解
- 网曝小伙手机贴膜月入3万 引发网友质疑 新辰深入调查真相
- layui分页快速使用
- 护肤产生共鸣_发展强大的品牌价值和产生共鸣的文化