通知图标

欢迎访问津桥芝士站

进阶篇07-2——ASCII码 - C佳家-C语言基础论坛-C语言-C佳家

进阶篇07-2——ASCII码

来自AI助手的总结
文章介绍了ASCII码表及其字符与码值互转的方法,并通过C语言程序示例展示了大小写转换及非字母字符的处理。

ASCLL码表

ASCII码表(American Standard Code for Information Interchange)是一种用于将字符编码为数字的标准。它定义了128个字符的编码方式,包括数字、字母、标点符号和控制字符等。每个字符都对应一个唯一的7位或8位二进制数。

20250531220106691-1.1

ASCLL码字符互换:

1)字符转换为ASCII码值:

#include <stdio.h>

int main() {
    char character;

    // 输入字符
    printf("请输入一个字符: ");
    scanf("%c", &character);

    // 输出 ASCII 码
    printf("字符 '%c' 的 ASCII 码是: %d\n", character, character);
    //在 printf 中,character 被用作整数值时,它的值是该字符的 ASCII 码。

    return 0;
}

运行结果:字符 A 对应的ASCII码为:65

2)将ASCII码转换为字符:

#include <stdio.h>

int main() {
    int asciiValue;

    // 输入 ASCII 码
    printf("请输入一个 ASCII 码: ");
    scanf("%d", &asciiValue);

    // 输出对应的字符
    printf("ASCII 码 %d 对应的字符是: '%c'\n", asciiValue, (char)asciiValue);
    // //在 printf 中,asciiValue被用作字符时,它的值是该 ASCII 码对应的字符。
    
return 0;
}

运行结果:ASCII码 65 对应的字符为:A 

总结:这个程序通过简单的输入和输出,展示了如何将字符与其对应的 ASCII 码互相转换,利用了 C 语言中字符与整数之间的隐式转换特性,即一个字符,可以视为某一个数值。

大小写互换

从键盘输入一个字符,若为小写字母,则转化为大写字母;若为大写字母,则转化为小写字母;否则转化为ASCII码表中的下一个字符。

#include <stdio.h>

int main() {
    char word;  // 声明一个字符变量
    int num;    // 声明一个整型变量

    printf("请输入一个字符:");
    scanf("%c", &word);  // 读取用户输入的字符

    num = word;  // 将字符转换为其 ASCII 码

    // 检查字符是否为字母
    if (num >= 65 && num <= 90 || num >= 97 && num <= 122) {
        // 如果是大写字母
        if (num >= 65 && num <= 90) {
            num += 32;  // 转换为小写字母
        } else {
            num -= 32;  // 转换为大写字母
        }
    } else {
        num++;  // 如果不是字母,将 ASCII 码加 1
    }

    // 输出转换后的字符
    printf("输入%c将转化为%c\n", word, (char)num);
    return 0;
}

运行结果:

20250531215930702-image

请登录后发表评论

    没有回复内容