初识C语言——第九天

ASCII定义

在 C 语言中,每个字符都对应一个 ASCII 码。ASCII 码是一个字符集,它定义了许多常用的字符对应的数字编码。这些编码可以表示为整数,也可以表示为字符类型。在 C 语言中,字符类型被定义为一个整数类型,它占用一个字节的内存空间。因此,我们可以用整数类型的变量来存储 ASCII 码,并通过对变量进行地址操作来获取 ASCII 码的地址。但是,我们通常不会将 ASCII 码视为地址,而是将其视为一种特殊的整数值。

字符串


复制代码
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <string.h>

//int main()
//{
//    int arr[10] = {0};//10个元素
//     const int n = 10;
//
//    int arr2[n] = {0};//n是变量,还是不行
//
//
//
//
//
//
//    return 0;
//}

//性别
//枚举关键词的声明
//enum Sex
//{
//    //Z这种枚举类型的变量的未来可能取值
//    //枚举常量
//    MALE=3,//赋初始值
//    FEMALE,
//    SECRET
//
//};
//
//int main()
//{
//    enum Sex s = MALE;
//    printf("%d\n", MALE);
//    printf("%d\n", FEMALE);
//    printf("%d\n", SECRET);
//
//
//
//    return 0;
//}


int main()
{
    //字符数组-数组是一组相同类型的元素
    char arr[] = "hello";
    char arr1[] = "abc";                //abc\0
//    char arr2[] = { 'a','b','c'};  //abc???????
    char arr2[] = { 'a','b','c','\0'};  //abc

    //打印字符串
    printf("%s\n", arr1);
    printf("%s\n", arr2);

    //求一下字符串的长度
    //注:字符串的结束标志是一个\0的转义字符,在计算字符串长度的时候\0是结束标志,而不是字符串的长度
    int len = strlen("abc");//string length
    printf("%d\n", len);
    printf("%d\n", strlen(arr1));
    printf("%d\n", strlen(arr2));

    return 0;
}

引用出自:C语言中float类型输出会四舍五入吗?你绝对不知道的float_float 四舍五入-CSDN博客


代码练习1

复制代码
int main()
{
    int a, b, c, h;
    scanf("%d", &h);
    //1.输入一个八位数的整数
    //2.分别取整个整数的前四位 中间两位 最后两位
    //3.格式化输出
    a = h / 10000;
    b = (h - 10000 * a) / 100;
    c = h - 10000 * a - 100 * b;

    printf("year=%d\n", a);
    if (b < 10)
    {
        printf("month=0%d\n", b);
    }
    else
    {
        printf("month=%d\n", b);
    }
    if (c < 10)
    {
        printf("day=0%d\n", c);
    }
    else
    {
        printf("day=%d\n", c);
    }

    return 0;
}

运行结果:


代码练习2

复制代码
#include <stdio.h>

int main() 
{
    //1.int 定义两个整数 中间用,隔开 8*4比特位
    //2.交换这两个整数 在定义一个中间数
    //3.输出
    int a,b,c;
    scanf("a=%d,b=%d",&a,&b);
    c=b;
    b=a;
    a=c;
    printf("a=%d,b=%d",a,b);
    return 0;
}

运行结果:


代码练习3:

复制代码
int main()
{
    char ch = 0;
    //1.定义一个字符变量
    //2.用getchar函数将读取的第一个字符放入字符变量ch中
    //3.使用循环条件,输出多组字母
    //4.用getchar吃掉每次循环中的第二个读取的输入的回车符
    //5.用putchar输出对应的字符
    while ((ch = getchar()) != EOF)
    {
        getchar();
        putchar(ch + 32);
        printf("\n");


    }

运行结果:

注意点:

1.getchar()【全称 int getchar(voi)】函数是在控制台输入字符的函数,返回值是整数,一次只能读取一个字符,回车键也是字符

2.putchar('a')or putchar(32)函数是单个字符输出函数,输出的是字符或者ASCII码对应的字符(0~127),其中大写字母和小写字母的ASCII相差32。

3.EOF为getc getchar读取错误时的报警提示,本句子意为输入只要是字符就可以打印。

相关推荐
爱装代码的小瓶子1 小时前
数据结构之队列(C语言)
c语言·开发语言·数据结构
爱喝矿泉水的猛男2 小时前
非定长滑动窗口(持续更新)
算法·leetcode·职场和发展
YuTaoShao2 小时前
【LeetCode 热题 100】131. 分割回文串——回溯
java·算法·leetcode·深度优先
YouQian7723 小时前
Traffic Lights set的使用
算法
快乐飒男3 小时前
哈希表(c语言)
c语言·哈希算法·散列表
go54631584654 小时前
基于深度学习的食管癌右喉返神经旁淋巴结预测系统研究
图像处理·人工智能·深度学习·神经网络·算法
aramae4 小时前
大话数据结构之<队列>
c语言·开发语言·数据结构·算法
大锦终4 小时前
【算法】前缀和经典例题
算法·leetcode
想变成树袋熊5 小时前
【自用】NLP算法面经(6)
人工智能·算法·自然语言处理
cccc来财5 小时前
Java实现大根堆与小根堆详解
数据结构·算法·leetcode