一分钟了解代码基本结构

第⼀个C语⾔程序

Alt

#include<stdio.h>//头文件
//输出haha
int main()//主函数
{
		printf("haha\n");//库函数
		return 0;
}

main函数

(一)main函数,又称主函数。主函数是程序进程的开始,也是程序进程的结束,所以必须要有的。一个程序只能有一个main 函数,并且main不能被别的自定义函数调用。
1.每个 C 语⾔程序不管有多少⾏代码,都是从 main 函数开始执⾏的, main 函数是程序的入口,
2.main 函数也被叫做:主函数。
2.main 前⾯的 int 表⽰ main 函数执⾏结束的时候返回⼀个整型类型的值。所以在 main 函数的最后写 return 0; 正好前后呼应。

(二)重点

• main函数是程序的⼊⼝
• main函数有且仅有⼀个
• 即使⼀个项⽬中有多个.c⽂件,但是只能有⼀个main函数(因为程序的⼊⼝只能有⼀个)

(三)⼀些常⻅的错误总结:
• main 被写成了mian
• main后边的()漏掉了
• 代码中不能使⽤中文符号,比如括号和分号
• ⼀条语句结束后,有分号

printf和库函数

printf函数

在上⾯的代码中有⼀句代码如下:
1 printf(“hello\n”);
代码中使⽤了 printf 函数,实现了在屏幕上的信息的打印。
这⾥简单的介绍⼀下 printf 。

printf 是⼀个库函数,它的功能是在标准输出设备(⼀般指屏幕)上进行信息的打印。上⾯的代码是使⽤ printf 函数打印字符串。只要把想要打印的⼀串字符放在双引号中并传递给printf函数就可以打印。
printf函数也可以⽤来打印其他类型的数据,比如:

printf("%d",100);
printf("%c",'a');
printf("%f",0.13);
printf(“%lf”,1.24);
printf("%s","abc");

printf() 的作⽤是将参数⽂本输出到屏幕。它名字⾥⾯的 f 代表 format (格式化),表⽰可以定制输出⽂本的格式。
这里的%d,%c等是占位符,会被后面的值替换。printf() 是在标准库的头⽂件 stdio.h 定义的。使⽤这个函数之前,必须在源码⽂件头部引⼊这个头⽂件。

库函数

为了不再重复实现常⻅的代码,让程序员提升开发效率,C语⾔标准规定了⼀组函数,这些函数再由不同的编译器⼚商根据标准进⾏实现,提供给程序员使⽤。这些函数组成了⼀个函数库,被称为标准库,这些函数也被称为库函数。在这个基础上⼀些编译器⼚商可能会额外扩展提供部分函数(这些函数其他编译器不⼀定⽀持)。
库函数⽐较多,大家可以点击这个链接深入了解:
链接: link
⼀个系列的库函数⼀般会声明在同⼀个头⽂件中,所以库函数的使⽤,要包含对应的头⽂件。
接下来我们讲一下头文件

头文件

在这里插入图片描述
这个后缀名为.h的就是头文件。
库函数是把函数放到库里,供别人使用的一种方式。.方法是把一些常用到的函数编完放到一个文件里,供不同的人进行调用。
那我们要使用这个库函数的时候,就需要把这个文件包含在这个程序中,调用的时候把它所在的文件名用#include<>加到里面就可以了。

补充:常见占位符

占位符(%)在C语言中是格式输入函数,如scanf、printf等函数中使用。其意义就是起到格式占位的意思,表示在该位置有输入或者输出。

• %c :字符。
• %d :整数。
• %f : float 类型浮点数。
• %lf :double 类型浮点数。
• %Lf :long double 类型浮点数。
• %s :字符串。
上面所有占位符之中,除了 %c 以外,都会⾃动忽略起⾸的空白字符。 %c 不忽略空⽩字符,总是返回当前第⼀个字符,无论该字符是否为空格。
如果想要跳过那个空白字符,可以写成scanf(" %c",&ch),即在%c前加上一个空格,表示跳过一个或多个空白字符(空格、制表符、换行符等)。

赋值忽略符

#include <stdio.h>
int main()
{
 int year = 0;
 int month = 0;
 int day = 0;
 scanf("%d-%d-%d", &year, &month, &day);
 return 0;
}

上例中,如果用户输入2000-1-3,则可以识别是年月日,但是如果用户出入2000/1/3,这种情况下,scanf就会识别失败。
为了避免这种情况,我们引入了赋值忽略符*。只要把 * 加在任何占位符的百分号后⾯,该占位符就不会返回值,解析后将被丢弃。

#include<stdio.h>
{
 int year=0;
 int month=0;
 int day=0;
 scanf("%d%*c%d%*c%d",&year,&month,&day);
 return 0;
}

代码中, %*c 就是在占位符的百分号后⾯,加⼊了赋值忽略符 * ,表⽰这个占位符没有对应的变量,解读后不必返回。

今天学习就到这里,我们下节课继续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值