C语言简介

本文介绍了C语言的基本概念,包括其发展历程、编译器种类,以及C语言的数据类型、变量、常量、操作符、分支语句(如if和switch)、循环语句(如while和for)等。文章以实例演示了如何在屏幕上打印字符串和实现简单的字符串对齐操作。
摘要由CSDN通过智能技术生成
第一节:什么是C语言?

    人和人是通过汉语、英语、日语等进行交流的。而计算机语言就是人与计算机交流的语言,常见的有C / C++/ JAVA/ python/ Go等。而所学的C语言也是有国际标准的,如C89,C90,C99,C11等。计算机语言刚开始还不成熟用的是所谓的二进制语言,后来发展到了汇编语言,再后来是B语言,到现在的C语言,早期是有很多不成熟的,发展到现在可以说是技术的进步。 

    对于我们所买的电脑就是所谓的计算机是分为应用层,就是电脑所安装的应用软件,其次是操作系统分为Windows/Linux操作系统,操作系统驱动我们的电脑(硬件),由这些构成我们所使用的计算机;那么对于C语言的编译需要什么呢?编译器主要有:Clang、GCC、WIN-TC、SUBLIME、MSVC、TUrbo C等。怎样编写呢?1、创建一个项目 2、创建一个源文件 3、写代码  4、编译代码 

C语言中常见的数据类型有:字符数据类型(char)、短整型(short)、整形(int)、长整型(long)、更长的整形(long long)、单精度浮点数(float)、双精度浮点数(double)等。它们所占空间大小依次是1、2、4、4、8、4、8字节。对于字节(byte)的感念,就不得不提到计算机中的单位了,最小的是bit——比特位,一个字节等于8个比特位,再就是1kb=1024byte、1mb=1024kb、1gb=1024mb、1tb=1024gb、1pb=1024tb....通过这些基础的了解和认识,我们就能够写出第一个我们自己写出的代码,在屏幕上打印“hello world"

int main()
{
  printf("hello world");
  return 0;
}

一个工程中有且仅有一个main函数,可以有多个.c文件但多个.c文件中只能有一个main函数。

字符串+转义字符+注释

注释:是来解释复杂的代码的,在C语言中,用/*  */ 来使用,而在C++中常用双斜杠(//)来用。

转义字符:就是转变了它原来的意思,有了新的使用意思。例如想要打印打印一串字母ab\ncd: printf("ab\ncd");那么这里\n就转移成了C语言中换行的意思,所以打印出来的就是abcd。

字符串:字符串是由数字、字母、下划线等组成的一串字符。这里要提的是字符串在结尾的位置都隐藏了一个/0的字符。而/0是字符串的结束标志。

C语言中的变量与常量

常量:就是不能改变的量。    变量:能被改变的量。而变量分为局部变量和全局变量。

创造一个变量,首先是( 类型  变量的名字  = 0;——int age =20;)也可以直接写( 类型  变量的名字  ;——int age;)但是这种写法不推荐。为了便于理解下面我们用一串代码来说明

//int a = 100 就是全局变量-{}外部定义的
int a = 100 ;
int main ( )
{

  //int a =10 就是局部变量-{}内部定义的
  //当局部变量和全局变量名字冲突的情况下,局部优先。
  //不建议把局部变量和全局变量的名字写成一样的。
  int a = 10 ;
printf ("%d\n",a);
return 0;
}
操作符:

算术操作符:+ 、-、*、/、%(加、减、乘、除、取模)

移位操作符:<< 、>>(左移操作符、右移操作符)

位操作符:&、^、|(按位与、按位异或、按位或)

单目操作符:!逻辑反操作                     &  取地址

                     -     负值                             sizeof 操作数的类型长度

                     +    正值                               ~

                     --    前置后置减减                ++  前置后置加加

                   (类型)  强制类型转化

关系操作符:>  大于                           <   小于

                     >=   大于等于                 <=  小于等于

                     !=  不等于                       ==  用于测试相等

逻辑操作符:&&    逻辑与                    ||   逻辑或

条件操作符:exp1?exp2:exp3

逗号表达式:exp1,exp2,exp3,   expn

常见的关键字

auto、break、case、char、const、continue、default、do、double、else、enum、extern、float、for、goto、if、intlong、register、return、shortsigned、sizeof、static、struct、switch、typedef、union、unsignedvoid、volatile、while

auto——是自动的(每个局部变量都是auto修饰的)。 extern——是用来声明外部符号的。

register——寄存器关键字。signed——有符号的(10、-20)。unsigned——无符号的。

static——静态的。 union——联合体(共同体)。 void——无、空。

static关键字:

  1. static修饰局部变量。
  2. static修饰全局变量。
  3. static修饰函数。
  • static修饰全局变量,使得这个全局变量只能在自己所在的源文件(.c)内部可以使用,其他源文件不能使用!
  • 全局变量在其他源文件内部可以使用,是因为全局变量有外部连接属性,但被static修饰后,变成内部连接属性,其他源文件就不能连接到这个静态的全局变量了!
  • static修饰函数,使得函数只能在自己所在的源文件内使用,不能在其他源文件内部使用。本质上:static是将函数的外部连接属性变成了内部连接属性!(和static修饰全局变量一样)               

define关键字:

#define定义常量和宏,define是一个预处理指令。

#define MAX 1000
int main()
{
  //这里的MAX就被定义成了数字1000
  printf("%d\n",MAX)
  return 0;
}

    C语言是结构化的程序设计语言!从而可以分为三类:一种是顺序结构、其次是选择结构结循环构。对于所有的C语言编程,无疑都离不开这三种结构。

首先我们先看分支语句和循环语句,对于分支语句和循环语句想必大家都不陌生,从他们的字面意思可知,分支就像是一颗大树,有一颗总的树干,其他都是他的枝干,大树吸收营养使,是由树干将营养传送到各个枝干。这就形如我们的选择分支语句。而循环语句就是一直往返循环进行。那么在C语言中它们的语法结构式是什么呢?

if语句

1.  if(表达式)    2. if(表达式)    3. if(表达式)

          语句;                 语句1;               语句1;

                                       else             else if(表达式2)

                                      语句2;               语句2;

                                                        else    语句3;       

switch语句

switch语句也是一种分支语句,常常用于多分支的情况。

switch(整形表达式)

{

     语句项;

循环语句(while、for、do while)

1. while(表达式)       注:在while循环中,break用于永久的终止循环,continue的作用是跳过本

         循环语句;             次循环continue后面的代码,直接去判断部分看是否进入下一次循环。

2. for(表达式1;表达式2;表达式3)

           循环语句;

在for循环中表达式1代表的是初始化,而表达式2是判断,表达式3则是调整部分!

3.   do 

     循环语句                           do....while循环是先执行再判断;

   while(表达式)

通过对语句的简单认识,下面我们实现在屏幕上打印从两端到中间的打印。

int main()
{
  char arr1[]=" welcome to my home!!!";
  char arr2[]="######################";
  int left=0;
  int right=strlen(arr1)-1;
  while(left<=right)
{
    arr2[left]=arr1[left];
    arr2[right]=arr1[right];
    printf("%s\n",arr2);
    Sleep(1000);
    system("cls");
    left ++;
    right--;
}
printf("%s\n",arr2);
return 0
}

对于C语言我只做了简单的叙述,使我们初步认识C语言,对于C语言还有更多知识等着大家去学习去思考去发掘。学习是一个循循渐进的过程,其中可能有迷茫,有失落,想放弃,但是我们要学会一步一个脚印踏踏实实,这样才能在学习的这条路上行稳至远。最后,希望所有学者都能更上一层楼。

cc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值