c语言初阶 -- 初识c语言篇(下)

简介: c语言初阶 -- 初识c语言篇(下)


前言

c语言是一门非常严谨的语言,需要非常系统的学习,在此篇中我只是简单介绍一下c语言的各种语法,后期会出更加详细的讲解,为了不使文章枯燥,我会配上一下代码,图文。

一,选择语句

生活中处处面临选择,如果好好学习,校招时拿一个好office,走向人生巅峰。

如果不学习,毕业等于失业,回家种地。

在c语言中有两种选择语句

if 语句

switch 语句

我们用c语言来实现一下上面这个功能

二,循环语句

在我们生活中总是会重复做一件事情,比如说,日复一日的学习。

在c语言中这叫作循环语句。

在c语言中如何实现循环呢?

c语言中提供了3种循环语句。

while语句

for语句

do … while语句

如果说我们能写够两万行代码就是入门了,用c语言实现一下这个功能。

三,函数

程序是以函数为单位组成的

相信大家之前一定见过main函数和很多,c语言提供的库函数。这些函数都是由c语言提供的,当然也可以自己定义函数,来实现一些简单的功能。

如果我想在两个数中找到最大值,可以自定义一个函数,代码如下。

函数基本包括两个方面,函数的定义和函数的调用。

函数的优点:函数的特点就是简化代码,代码复用。

四,数组

如果要把100个数字存起来,难道我们要定义100个变量吗?

这非常费劲,但是在c语言中有数组,在同一类型的变量下存储管理起来比较方便。

c语言给数组的定义 —— 一组相同类型元素的集合

4.1数组的初始化

要想正确的使用数组,首先必不可少的就是声明

数组可以这么定义

int arr[10]={1,2,3,4,5,6,7,8,9,10};

注:创建了一个arr的数组,在里面放了10个元素。

4.2数组的下标

下标是用来访问数组的

每个数组元素都有下标,下标是从零开始的

int arr[10]={0};   //定义了一个数组,有十个元素,下标范围是0~9

4.3数组的使用

#include <stdio.h>
int main()
{
    int i = 0;
    int arr[10] = {1,2,3,4,5,6,7,8,9,10};
    for(i=0; i<10; i++)
    {
         printf("%d ", arr[i]);
    }
       printf("\n");
    return 0;
}

注:定义了一个arr的数组里面有十个元素,分别把他们输出。

五,指针

指针其实是用来访问内存的。

指针可以说是c语言的终极篇,这是c语言最难的一个章节,也是c语言和其他语言不一样的地方,直接可以操作内存。我在学习指针的时候,特别头疼,这篇文章只是简单认识一下指针。

内存( 要想学好指针一定要了解一下内存。)

内存是电脑上特别重要的存储器,计算机中程序的运行都是在内存中进行的 。

所以为了有效的使用内存,就把内存划分成一个个小的内存单元,每个内存单元的大小是1个字节。

为了能够有效的访问到内存的每个单元,就给内存单元进行了编号,这些编号被称为该内存单元的地

址。

可以这么理解,假如有一栋楼里面有很多房间,为了方便管理我们把每个房间都编号。

一个内存单元的大小是一个字节。在计算机中的物理电线,会产生高低电平的信号,转换成二进制位,而这种二进制数字就可以作为内存的编号或地址,用这些地址来管理内存,在c语言中,把这些地址也叫指针。

程序运行起来,要加载到内存中,也要申请空间使用。

注:这些所谓的进制只是数值的表示形式而已。

#打印地址

注:%p是专门用来打印地址的,是以16进制的形式表示地址

虽然a占有4个字节,但是当我们&a的时候,拿到的是4个字节中第一个字节的地址。

指针变量

指针变量又称指针地址,是一个变量,用来存放指针的变量。

指针变量的用法,我有一个变量里面存放了一个地址,有朝一日我能通过这个地址找到这个地址里面存放的内容,并且可以改变这个内容。

注: *是说明pa是指针变量,*pa解引用操作符,pa就是a。

其实这么理解会更加容易,就相当于高启强告诉老莫说我想吃鱼了,老莫就开始办事了。在这里了老莫就是
pa,高启强就是&a,提供信息。

指针变量的大小

指针变量的大小取决于地址的大小

32位平台下是32个bit位(即4个字节)

64位平台下是64个bit位(即8个字节)

#include <stdio.h>
int main()
{
  printf("%d\n", sizeof(char *));
  printf("%d\n", sizeof(short *));
  printf("%d\n", sizeof(int *));
  printf("%d\n", sizeof(double *));
  return 0;
}

五,结构体

结构体是C语言中特别重要的知识点,结构体使得C语言有能力描述复杂类型。

比如描述学生,学生包含: 名字+年龄+性别+学号 这几项信息。

这里只能使用结构体来描述了。

结构体的初始化

struct Stu
{
  char name[20];//名字
  int age;    //年龄
  char sex[5];  //性别
  char id[15]; //学号
};

结构体的使用

//打印结构体信息
struct Stu s = {"张三", 20, "男", "20180101"};
//.为结构成员访问操作符
printf("name = %s age = %d sex = %s id = %s\n", s.name, s.age, s.sex, s.id);
//->操作符
struct Stu *ps = &s;
printf("name = %s age = %d sex = %s id = %s\n", ps->name, ps->age, ps->sex, ps-
>id);

总结

初始c语言就到这里啦!

相信大家对c语言有一定认识了,请关注后续文章,我将出c语言详解。

成功之路没有捷径,我始终相信多敲多练。

未完待续…

目录
相关文章
|
3月前
|
C语言
C语言初阶⑧(结构体)知识点和笔试题
C语言初阶⑧(结构体)知识点和笔试题
31 0
|
2月前
|
C语言
C语言初阶:如何判断是否为素数并且输出
C语言初阶:如何判断是否为素数并且输出
19 0
|
3月前
|
C语言 数据安全/隐私保护
C语言初阶②(分支语句和循环语句)编程练习
C语言初阶②(分支语句和循环语句)编程练习
47 1
|
3月前
|
存储 编译器 C语言
C语言初阶⑦(指针初阶)知识点+笔试题(上)
C语言初阶⑦(指针初阶)知识点+笔试题
29 0
|
3月前
|
算法 程序员 编译器
C语言初阶③(函数)知识点+编程作业(递归模拟strlen,pow)
C语言初阶③(函数)知识点+编程作业(递归模拟strlen,pow)
33 0
|
1月前
|
编译器 C语言
【C语言初阶】指针篇—下
【C语言初阶】指针篇—下
|
1月前
|
存储 C语言
【C语言初阶】指针篇—上
【C语言初阶】指针篇—上
|
2月前
|
C语言
【初始C语言8】详细讲解初阶结构体的知识
【初始C语言8】详细讲解初阶结构体的知识
|
3月前
|
程序员 编译器 测试技术
C语言初阶⑨(调试)(如何写出好的代码)(模拟实现strcpy和strlen)
C语言初阶⑨(调试)(如何写出好的代码)(模拟实现strcpy和strlen)
35 1
|
3月前
|
存储 Linux C语言
C语言初阶⑥(操作符详解)编程作业(算数转换)(下)
C语言初阶⑥(操作符详解)编程作业(算数转换)
27 1