首页 > 其他分享 >C语言基础

C语言基础

时间:2024-09-17 14:27:32浏览次数:3  
标签:语句 return int age 基础 C语言 printf main

注释代码的方式

选中需要注释的代码,然后ctrl+/即可注释代码

// printf("%d\n", strlen(arr));  ctrl+/ 这个也是注释

需要注释的代码在那行代码前面加//也可以注释代码

// scanf("%d%d", &a,&b); // 注释代码

输入输出函数

介绍了C语言中的标准输入输出函数,以及使用方式。

scanf函数

scanf函数用于用户输入

scanf("%d", &a); //scanf输入

printf 函数

printf用于输出

printf("%d\n",a); //printf输出

主函数

每个C语⾔程序不管有多少⾏代码,都是从 main函数开始执行的,main函数是程序的入口,它也被叫做:主函数 。main 前⾯的 int 表⽰main 函数执⾏结束的时候返回⼀个整型的值。所以在 main 函数的最后写return 0正好前后呼应,还有main后面的()不要忘记。

int main() //主函数
{
    return 0;
}

头文件

标准库头文件包含了预定义的函数声明和宏定义,它们是C语言的一部分。例如:

<stdio.h> - 输入输出流的标准头文件,包含了如 printf, scanf 等函数的声明。

<stdlib.h> - 提供了内存分配、环境使用、转换等功能的头文件,如 malloc, free, atoi 等。

<string.h> - 字符串操作的头文件,包括 strcpy, strlen, strcat 等。

<math.h> - 数学函数的头文件,如 sin, cos, sqrt 等。

<stdbool.h> - 布尔类型的定义,提供了 truefalse 宏。

<stddef.h> - 包含了 NULL 宏和 size_t 类型的定义。

如何使用头文件

你的源文件中,你可以使用 #include 指令来包含所需的头文件。例如:

#include <stdio.h>

int main(void) {
    printf("Hello, World!\n");
    return 0;
}

C语言关键字

c语言中有一些保留的名字的符号,比如:intifreturn,这些符号被叫做关键字。

关键字都有特殊的意义,是保留给C语⾔使⽤的,关键字不能自己去创建,自己创建标识符不能和关键字重复

c语言的32个关键字如下:

auto  break   case  char  const   continue  default  do   double else  enum   ex
 float  for   goto  if   int   long  register    return   short  signed  sizeof  
struct  switch  typedef union  unsigned   void  volatile  while

基础数据类型

字符型

char
 [signed] char
 unsigned char

整型

//短整型
short [int]
 [signed] short [int]
 unsigned short [int]
 //整型
int
 [signed] int
 unsigned int
 //⻓整型
long [int]
 [signed] long [int]
 unsigned long [int]
 //更⻓的整型
//C99中引⼊
 long long [int]
 [signed] long long [int]
 unsigned long long [int]

浮点型

float
 double
 long double

操作符

单目操作符

后置,前置++

int main ()
{
    int a = 10;
    int b = a++;//后置++,先使用,后++
    int b = a; a=a+1;
    return 0;
}
int b = ++a;//前置++,前++,后使用
a=a+1;b=a;

强制类型转换()

int main()
int a = (int)3.14;//强制类型转换是把类型放到括号里面
printf("%d\n", a);
  return 0;
//3.14 字面浮点数,编译器默认为double类型

sizeof 操作数的类型长度(以字节为单位)计算一个变量所占用的大小

//sizeof是单目操作符
int a = 10;
int arr[10] = { 0 };
printf ("%d\n", sizeof(arr));//40 计算的是整个数组的大小,单位是字节

逻辑操作符

&& 逻辑与 - 并且

int a = 20;
int b = 20;
if (a && b) //两个同时满足才能执行某个事情
    printf("hehe\n");
return 0;
}

|| 逻辑或 - 或者

int main()
{
    int a = 0;
    int b = 20;
    if (a || b)
    printf("hehe\n"); //只要有一个满足就能够执行
    return 0;
}

条件操作符

exp1 ? exp2 : exp3三目操作符,有三个操作数。

exp1如果为假,那么exp2不算,exp3算,整个结果是exp3的结果

exp1如果为真,那么exp2算,exp3不算,整个结果是exp2的结果

#include <stdio.h>
int main()
{
    int a = 10;
    int b = 20;
    int r = (a > b ? a : b); //a大于b吗,如果a大于b,那么较大值就是a否则就是b
    return 0;
}

指针是什么?

内存

#include <stdio.h>
 int main()
 {
    // int a = 10; //向内存申请4个字节,存储10
    // //&a;//取地址操作符
    // // printf("%p\n", &a);
    // int* p = &a; //p就是指针变量
    //*p = 20;解引用操作符,意思就是通过p中存放的地址,找到p所指向的对象,*p就是p指向的对象

    // printf("%d\n",a);

    //举例
    // char ch = 'w';
    // char * pv = &ch;

    return 0;

 }

指针变量的大小

指针变量的大小取决于地址的大小,32位平台下的地址就是32比特位(即4个字节),64位平台下就是64个比特位(即8个字节)

int main()
    {
        printf("%d\n", sizeof(char *));
        printf("%d\n", sizeof(int *));
        printf("%d\n", sizeof(double *));
        return 0;
    }

分支语句和循环语句

什么是语句?

C语言语句分为五类:表达式语句,函数调用语句,控制语句,复合语句,空语句

控制语句

控制语句用于控制程序的执行流程,以实现程序的各种结构方式,它们由特定的语句定义符组成,C语言有九种控制语句。分为以下三类:

条件判断语句也叫分支语句: if语句,switch语句;

循环执行语句:do while语句,while语句,for语句;

转向语句:break语句,goto语句,continue语句,return语句。

分支语句

if语句

语法结构:
//代码1
if(表达式)
语句;
//代码2
if(表达式)
语句1;
 else
语句2;
 //多分支    
if(表达式1)
语句1;
 else if(表达式2)
语句2;
 else
语句3;

示例代码:

#include <stdio.h>
 //代码1
 int main()
 {
 int age = 0;
 scanf("%d", &age);
 if(age<18)
    {
 printf("未成年\n");
    }
 }
 //代码2
 #include <stdio.h>
 int main()
 {
 int age = 0;
 scanf("%d", &age);
 if(age<18)
    {
 printf("未成年\n");
    }
 else
    {
 printf("成年\n");
    }
 }
 //代码3
 #include <stdio.h>
 int main()
 {
 int age = 0;
 scanf("%d", &age);
 if(age<18)
    {
 printf("少年\n");
    }
 else if(age>=18 && age<30)
    {
 printf("青年\n");
    }
 else if(age>=30 && age<50)
    {
printf("中年\n");
    }
 else if(age>=50 && age<80)
    {
 printf("老年\n");
    }
 else
    {
 printf("老寿星\n");
    }
 }

注意:如果表达式的结果为真,则语句执行。 在C语言中如何表示真假? 0表示假,非0表示真。

如果条件成立,要执行多条语句,怎应该使用代码块。

#include <stdio.h>
 int main()
 {
 if(表达式)
    {
语句列表1;
    }
 else
    {	//这里的一对 { }就是一个代码块。
语句列表2;
    }
 return 0;
 }

switch语句


标签:语句,return,int,age,基础,C语言,printf,main
From: https://blog.51cto.com/u_17022062/12036119

相关文章

  • c语言_day6(完结)
    目录函数格式:函数的声明函数的调用:函数名(实参)形参和实参区别:函数传参值传递地址传递数组传递开辟堆区空间string函数族strcpystrncpystrcatstrcmp递归函数结构体格式:结构体变量赋值访问重定义typedef结构体数组初始化结构体指针赋值:大小结构体......
  • Linux基础命令
    一、嵌入式、Linux背景嵌入式:硬件与软件相结合定制、为硬件设计相关代码来进行操作,代码测试,烧进板子,通过语音、图像、按钮等操作方式来调用。操作系统种类:DosWindowsUnixMacChmod osAndroid->华为、小米、中兴等等iOS介绍一下Linux:结构:一棵倒置的树/bin   ......
  • 安全:nftables:基础知识
    一,policy:1,原文档链接:https://docs.redhat.com/zh_hans/documentation/red_hat_enterprise_linux/9/html/configuring_firewalls_and_packet_filters/assembly_creating-and-managing-nftables-tables-chains-and-rules_getting-started-with-nftables#con_basics-of-nftables......
  • 【C语言】函数与模块
    目录一、函数(Functions)1.1.函数的基本组成部分1.2.示例:一个简单的C函数1.3.函数调用和返回值二、模块(Modules)2.1.模块的基本构成2.2.C语言模块示例2.3.编译和链接三、使用场景3.1.函数的使用场景3.1.1.实现数学运算3.1.2.数据处理3.1.3.模块化编程3.1.......
  • 使用 Axios 配置动态域名的基础 URL 和项目打包
    在Web开发中,我们常常需要根据不同的环境(如开发、测试和生产)配置不同的API基础URL。使用Axios作为HTTP客户端,我们可以通过动态配置基础URL来实现这一目标。本文将介绍如何在Axios中配置动态域名,并提供项目打包的示例。为什么需要动态配置基础URL?在开发过程中,我......
  • JAVA 基础知识点(一)
    摘要:本文所介绍知识点去粗取精,有助记忆。1.1 关键词定义:关键词是指被Java语言赋予特殊含义的单词。关键词特点:(1)关键词的字母全部小写;           (2) 代码编辑器对关键词都有高亮显示;如public,class,static。packagecom.itheima.test;importj......
  • 带你深入了解C语言指针(四)
    目录前言一、回调函数是什么?二、qsort使用1.什么是qsort2.qsort函数的语法解析3.回顾冒泡排序4.使用qsort函数排序整型数据4.1思路分析4.2完整代码:4.3总体逻辑展现5.使用qsort函数排序结构数据5.1strcmp()函数5.2思路分析5.2.1按名字比较5.2.2按年龄比较三、......
  • 从kaggle竞赛零基础上手CV实战(Deepfake检测)
    关注B站可以观看更多实战教学视频:hallo128的个人空间从kaggle竞赛零基础上手CV实战从kaggle竞赛零基础上手CV实战(Deepfake检测)目录从kaggle竞赛零基础上手CV实战(Deepfake检测)背景介绍学习地址课程大纲课程特色适用人群背景介绍随着人工智能技术的迅猛发展,深......
  • Formily基础
    Formily基础formilyformily是一款面向中后台复杂场景的数据+协议驱动的表单框架,也是阿里巴巴集团统一表单解决方案,可以完成复杂表单需求,而且提供了表单设计器让我们快速设计表单核心优势高性能字段数据极多的情况下保持快速响应,可以实现高效联动逻辑跨端能力与框架无......
  • c语言中“函数指针”
    变量有地址,数组有地址,那么函数是否有地址呢?有intAdd(intx,inty){returnx+y;}intmain(){   pritnf("%p\n",&Add);   pritnf("%p\n",Add);  //&函数名和函数名都是函数的地址,没有区别。   return0;}若是想存放起来:int(*pf)(int,int)=&Add......