c语言输出字符要什么头文件,C语言中注释,导入头文件,主函数,输入和输出、变量、运算符的使用,以及一些相关介绍...

本文详细介绍了C语言的基础知识,包括注释使用、头文件包含、main函数、基本数据类型、变量声明与定义、运算符等内容,并对关键概念进行了实例演示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.注释的使用

// 单行注释

/* */多行注释(不能嵌套)

#include的使用

include 宏 导入头文件,称为文件包含预处理命令,编译时由预处理器执行 。如果系统已经提供某些功能的实现只需要使用include将这些功能所在的头文件导入进来就可以了。

eg. stdio.h math.h stdlib.h string.h

"自己定义的头文件" eg. "calcullate.h"

(注意导入时两种符号的区别)

#include 编译器首先从系统的类库里查找这个头文件 ,如果没有再到自己文件中查找,否则报错

#include "stdio.h"编译器首先从自己的文件里查找这个头文件 ,如果没有再到系统的类库里查找,否则报错

2.main函数的使用

main()函数 =代码块=完成特定程序 ,所有程序入口点都是main函数

(注意每个程序有且只有一个main函数)

int返回值 记录当前程序的运行状态

0:正常结束 资源自由分配

非零:1 异常结束 没收资源

int argc:参数个数 argument count

char* argv[]:(char*字符串) 每个参数组成的字符串数组

#include

int main(int argc,char*argv[]){

printf("%d",argc);

printf("%s",argv[0]);

return 0;

}

输出结果:1C:Users123456Desktop未命名1.exe

拓展:

在C中如果调用输入输出函数(printf和scanf)需要加上占位符%,起到格式占位的作用,意思是在该位置有输入或输出。

常用

%d表示输入或输出十进制有符号数

%ld长整型输出

%c用来输出一个字符

%s用来输出一个字符串

%f表示输入或输出浮点数,以小数形式输出实数,隐含输出六位小数

%.100f用来输出实数,保留小数点100位

%lf表示输入或输出双精度浮点数

不常用

%o以八进制数形式输出整数

%x以十六进制数形式输出整数,或输出字符串的地址

%e以指数形式输出实数

%g根据大小自动选f格式或e格式,且不输出无意义的零

%u以十进制数输出unsigned型数据(无符号数)。注意:%d与%u有无符号的数值范围,也就是极限的值,不然数值打印出来会有误

3.printf格式化输出

printf 输出语句,用来让终端 console口输出数据

#include

int main(int argc,char*argv[]){

printf("hello

world

");

return 0;

}

输出结果:hello

world

转义字符

除了在键盘上可以直接输入表示字符外,C还提供一种使用特殊形式表示的字符常量,这些字符常量以反斜线“”开头,改变了原来字符常量的含义,称为转义字符

6f81439baf47a663435ce8022d844992.png

4.scanf格式化输入

scanf 输入语句,用来向终端输入数据

当用户在终端输入数据时,数据会被存放到缓冲流,scanf用于在缓冲流中找到数据将其放入到给定的位置

放入到给定的位置就是保存输入的数据,保存数据需要用到变量,我们只需要把数据送到对应变量的地址,就存储好了该数据,就可以通过该变量使用该数据。所以使用&获得变量a的地址。

int a=4;

scanf("%d",&a);//&表示取地址

此时输入数据必须按照“jack+数据”的格式才可以将数据送入到变量中。所以,scanf函数中""里面的内容用来控制输出格式

#include

int main(){

scanf("jack%d",&a);

scanf("%d",a);

return 0;

}

注意:不要在scanf里面随意写内容写的内容是用输入的格式

scanf("%d%d",a,b);//输入时:数据+空格+数据

scanf("%d

",a);//输入时:数据+

(此时

并不表示换行)

5.基本数据类型->只能存一个值

①首先明确C标准并没有具体给出规定哪个基本类型应该是多少个字节数,而且这个也与编译器有关

②虽然16位、32位或者64位的机子各种类型并一样,但有几条规则(ANS/ISO制定):

short至少占用2个字节

int建议为一个机器字长,32位环境下为4字节,64位环境下为8字节

short的长度不能大于int,long的长度不能小于int

③基本数据类型参照表格

54370c189645c6da3db1fefad07a7082.png

bool 布尔型,是、成立ture;不是、不成立false

string 字符串,"jack"

基本数据类型不同所占内存空间不同

void无返回值,int有返回值

注意:

1.c语言printf输出float和double都可以用%f,double型数据还可以用%lf

2.scanf当中若是对双精度的变量赋值是必须是%f后跟lf,而printf当中可以用%lf也可以用%lf

3.printf()只会看到双精度数,printf的%f格式总是得到double,所以在printf()中使用%lf跟%f的输出显示效果相同

4.对于变量来说,double类型比float类型的精度要高。double精度更高,是指它存储的小数位数更多,但是输出默认都是6位小数。如果你想输出更多小数,可以自己控制,比如%.10lf就输出10位小数

④控制输出格式:

%md:要求输出字段宽度为m,右对齐,不够左端补空格,大于m按实际输出,如%3d

#include

int main(){

int count =0;

count =3333;

printf("count =%6d

",count);

return0;

}

输出结果:count =空格空格3333

%0md:要求输出字段宽度为m,右对齐,不够左端补0,大于m按实际输出,如%02d

#include

int main(){

int count =0;

count =3;

printf("I have %02d dogs

",count);

return0;

}

输出结果:I have 03 dogs

%m.nd:要求输出字段宽度为m,右对齐,后面n个位置当做小数,没有的补0,最前面mn个没有的补空格,如%3.2d

#include

int main(){

float score = 3.1415926;

printf("%2.2f

",score);

return0;

}

输出结果:3.14

测量数据所占字节数(一个字节占八位)

#include

int main(){

printf("%d

",sizeof(int)); //4

printf("%d

"sizeof(long));//4

printf("%d

",sizeof(float));//4

printf("%d

",sizeof(double));//4

printf("%d

",sizeof(short));//2

printf("%d

",sizeof(char));//1

printf("%d

",sizeof(bool));//1

return 0;

}

输出结果:4

4

4

4

2

1

1

6.变量

变量是存储数据的内存区域,变量名是所对应内存区域的标识符。标识符是用来表示程序中实体的名字。变量所标识的内存区域中的数据是可以改变的。以图书馆座位为例:座位相当于变量,座位号相当于变量名,而座位上的人相当于储存在变量的数据;变量的类型是上个板块讲到的基本数据类型(数据类型决定变量的储存大小)

变量命名:

1.必须以字母或下划线开头。而实际上编程最常用的是以字母开头,以下划线开头变量名是系统专用的,最终还是以英文字母开头

正确变量名:

int In_1=2;

int abc=3;

错误变量名:

int1Int_1=2;

int 2abc=3;

2.不可以包含空格、标点符号和类型说明符(%、&、!、#、@、$)

错误变量名:

int name age=1;

int age%=2;

3.字母是区分大小写的

int n=2;

int N=2;

//变量N和变量n是两个不同的变量

4.有效长度为225个字符

5.不可以是关键字

C语言中的关键字有:auto、 double、 int、 struct、 break 、else、 long、 switch、case、 enum、 register 、typedef、 char 、extern 、return、 union 、const、 float 、short、 unsigned、 continue、 for、 signed 、void、default 、goto、 sizeof 、volatile、 do 、if 、while、 static

变量的使用

#include

int main(){

char choose = ' ';//对字符操作%d,显示字符对应的 ASCII码

printf("%d

",choose);

return 0;

}

输出结果:9

字符默认情况为/0

变量的声明:

没有分配内存空间,使用的时候才会分配,如int a

变量的定义:立刻为我们分配内存空间 赋初值,如int a=0

bool类型的变量需要导入(stdbool.h),其值非0即真(1)、0为假(0)

7.运算符

算术运算符

ca54a7cdba540b0c97b575d8f7c2e036.png

#include

int main(){

int a=20;

if(a++==20) {

printf("a=20

");

printf("a=%d

",a);

}else{

printf("a!=20

");

printf("a=%d

",a);

}

printf("a=%d

",a);

return 0;

}

输出结果:a=20

a=21

a=21

(if在下一板块讲解)

注意:a++是先赋值后计算,++a是先计算后赋值

逻辑运算符

d16b46b5f3c023556746cf02003b09f1.png

关系运算符

920538a7fb07e04efcf8c32d67bc86d1.png

赋值运算符

77d8dcdde7c5a196aff595092ec237eb.png

if语句

1、if(表达式)

?语句

if(x>y)

printf("%d",x);//此时,如果表达式为真,则执行printf语句

2、if(表达式){

?语句1

?} else {

??语句2

??}

if(x>y){

printf("%d",x);

}else {

printf("%d",y);

}

//此时,如果x>y成立为真,则执行语句printf("%d",x),然后直接跳过else,同时也跳过语句printf("%d",y),去执行之后的语句

//如果x>y不成立为假,则不执行语句printf("%d",x),执行语句printf("%d",x)

3、if(表达式1){

?语句1

?}else if(表达式2){

???语句2

???}else if(表达式3){

????语句3

????}

此时,哪个表达式为真,则运行哪个if后面的语句。如表达式3成立为真,执行语句3

6da7732593dc1823dfa607ccb517c147.png

问号表达式(三目运算符)

#include

int main(){

char c;

if (3>1){

c='y';

}else{

c='n';

}

return 0;

}

输出结果:y

等价于

c = 3 > 1 ? 'y':'n';

逗号表达式

result=表达式1,表达式2,表达式3 (最终结果为表达式3)

include

int main(){

int temp=20;

if(temp--,temp--,temp--) {

printf("temp=%d",temp);

}//17

int t2=(temp--,temp--,temp--);

if(t2){

printf("temp=%d",temp);

printf("t2=%d",t2);//先赋值后运算

}

return 0;

}

输出结果:tem=17tem=14t2=15

划重点

a++和++a 需要明确两者的不同

还有逗号表达式的使用也是重点

scanf语句中""中内容不要随意增加,容易出错

此次内容均是一些基础知识,但是万丈高楼平地起,打好基础十分重要。规范代码形式,了解代码意义,重视小细节。同时要养成随时测试代码的习惯,一步一步来,避免出错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值