首页 > 编程语言 >C语言程序设计练习(三)

C语言程序设计练习(三)

时间:2024-07-24 23:53:36浏览次数:11  
标签:int 练习 bytes C语言 printf zu 程序设计 sizeof Size

1.整型数据类型存储空间大小

#include <stdio.h>  
  
int main() {  
    printf("Size of int: %zu bytes\n", sizeof(int));  
    printf("Size of short: %zu bytes\n", sizeof(short));  
    printf("Size of long: %zu bytes\n", sizeof(long));  
    printf("Size of long long: %zu bytes\n", sizeof(long long));  
    return 0;  
}

2.浮点型数据类型存储空间大小

#include <stdio.h>  
  
int main() {  
    printf("Size of float: %zu bytes\n", sizeof(float));  
    printf("Size of double: %zu bytes\n", sizeof(double));   
    printf("Size of long double: %zu bytes\n", sizeof(long double));  
    return 0;  
}

3.其他数据类型存储空间大小

#include <stdio.h>  
  
// 定义一个结构体作为示例  
struct ExampleStruct {  
    int intValue;  
    double doubleValue;  
    char charValue;  
};  
  
// 定义一个枚举作为示例  
enum ExampleEnum {  
    ENUM_VALUE_1,  
    ENUM_VALUE_2,  
    ENUM_VALUE_3  
};  
  
int main() {  
    // 输出基本数据类型的大小  
    printf("Size of char: %zu bytes\n", sizeof(char));  
    printf("Size of int: %zu bytes\n", sizeof(int));  
    printf("Size of short: %zu bytes\n", sizeof(short));  
    printf("Size of long: %zu bytes\n", sizeof(long));  
    printf("Size of long long: %zu bytes\n", sizeof(long long));  
    printf("Size of float: %zu bytes\n", sizeof(float));  
    printf("Size of double: %zu bytes\n", sizeof(double));  
    printf("Size of long double: %zu bytes\n", sizeof(long double));  
  
    // 输出指针的大小  
    printf("Size of pointer: %zu bytes\n", sizeof(void *));  
  
    // 输出结构体的大小  
    printf("Size of struct ExampleStruct: %zu bytes\n", sizeof(struct ExampleStruct));  
  
    // 输出枚举的大小(通常和int相同)  
    printf("Size of enum ExampleEnum: %zu bytes\n", sizeof(enum ExampleEnum));  
  
    return 0;  
}

4.浮点数向零舍入

#include <stdio.h>  
  
int main() {  
    double num1 = 3.14;  
    double num2 = -3.14;  
      
    // 向零舍入  
    int intNum1 = (int)num1;  
    int intNum2 = (int)num2;  
      
    printf("num1: %f, truncated: %d\n", num1, intNum1);  
    printf("num2: %f, truncated: %d\n", num2, intNum2);  
      
    return 0;  
}

5.打印ASCII码

#include <stdio.h>  
  
int main() {  
    char myChar = 'A';  
    int asciiValue = (int)myChar;  
  
    printf("The ASCII value of '%c' is %d.\n", myChar, asciiValue);  
  
    return 0;  
}

6.打印字符

#include <stdio.h>  
  
int main() {  
    char myChar = 'A'; // 定义一个字符变量并初始化为'A'  
    printf("打印的字符是:%c\n", myChar); // 使用%c作为占位符打印字符  
      
    // 也可以直接在printf中使用字符字面量  
    printf("直接打印的字符是:%c\n", 'B');  
      
    return 0;  
}

7.整型与布尔型的转换

#include <stdbool.h>  
  
bool isPositive(int x) {  
    return x > 0; // 这里x > 0的结果是整型,但在赋值给bool时自动转换为bool  
}  
  
int main() {  
    bool b = 5; // 隐式转换,5(非0)被视为true  
    printf("%d\n", b); // 输出1(假设true以整数1表示)  
      
    bool anotherB = (bool)42; // 显式转换  
    printf("%d\n", anotherB); // 同样输出1  
      
    return 0;  
}

8.Hello,World!的大小

#include <stdio.h>  
  
int main() {  
    // 注意:这里的"Hello, World!"实际上包含了全角的"!",  
    // 但在简化讨论中,我们暂时忽略它的多字节性质。  
    // 如果你只是想要求字符数(不包括'\0'),可以这样做:  
    const char *str = "Hello, World!"; // 注意:这里的"!"可能是多字节的,但暂时忽略  
    // 直接给出字符数(不包括'\0')作为“大小”的近似值  
    // 注意:这实际上不是严格意义上的大小,因为它不包括'\0'  
    // 但对于很多简化讨论来说,这样做已经足够了。  
    printf("The approximate size (character count, excluding '\\0') of '%s' is: %zu\n",  
           str, strlen(str)); // 注意:strlen不包括'\0'  
  
    // 如果你想要一个包括'\0'的“大小”的近似值(尽管这在实际中很少这样做),  
    // 你可以手动加1,但请注意这不是通过sizeof得到的,因为sizeof对指针和数组的行为不同。  
    printf("The approximate size (including a hypothetical '\\0') of '%s' is: %zu\n",  
           str, strlen(str) + 1);  
  
    // 但请记住,对于字符串字面量,你不能通过sizeof(str)来获取其大小(包括'\0'),  
    // 因为str是一个指向字符数组首元素的指针,sizeof(str)将给出指针的大小,而不是数组的大小。  
  
    return 0;  
}

标签:int,练习,bytes,C语言,printf,zu,程序设计,sizeof,Size
From: https://blog.csdn.net/huc_error/article/details/140675830

相关文章

  • C语言:数组
    hello,大家好今天我们来讲解c语言中数组的知识。一、数组的概念数组是⼀组相同类型元素的集合;数组中存放的是1个或者多个数据,但是数组元素个数不能为0。数组中存放的多个数据,类型是相同的。数组分为一维数组和多维数组,多维数组一般比较多见的是二维数组。二、一维数组 1......
  • c语言--数组详解
    数组的概念数组是一组相同类型元素的集合;从这个概念我们就可以发现2个有价值的信息:数组中存放的是1个或多个数据,但是数组的元素不能为0。数组中存放的多个数据,类型是相同的。数组分为一维数组和多维数组,多维数组一般比较多见的是二维数组。一维数组1.一维数组的创建和初......
  • 分页练习-网页开发常用
    分页练习-网页开发常用点击查看代码#练习题请通过分页对数据进行展示"""要求:每页显示10条数据让用户输入要查看的页面:页码"""USER_LIST=[]foriinrange(1,836):temp={'name':'你少妻-%s'%i,'email':'123%[email protected]'%i}......
  • C语言学习day03
    变量概念表面:程序运行过程中取值可以改变的数据实质:变量其实代表了一块内存区域/单元/空间。变量名可视为该区域的标识。整个变量分为三部分:  变量名:这个只是变量的一个标识,我们借助变量名来存取数据。  变量空间/内存单元:这个就是内存中分配的一块用来存储数据的......
  • C语言——数据类型
    C语言——数据类型C语言中的数据类型种类整型整型的常量形式整型的变量形式整型类型的分类整型数据在内存中的存储浮点型浮点型的大小浮点型数据的存储浮点数的比较问题字符型C语言中的数据类型种类数据类型可分为基本数据类型(整型,浮点型,字符型,枚举类型),构造数据类......
  • c语言-数组(1)
    5.数组(1)数组的意义:保存多个具有相同数据类型的数据特点:(1)具有相同的数据类型。(2)数据的地址是连续的 数组的表现形式类型标识符[长度];数组的空间大小 数组的空间大小=单个数据的空间大小*长度tip:已知数组table,求该数组的长度?intl=sizeof(table)/sizeof(......
  • C语言 ——— 函数指针数组的讲解及其用法
    目录前言函数指针数组的定义函数指针数组的使用前言数组是存放一组相同类型数据的存储空间关于指针数组的知识请见:C语言———指针数组&指针数组模拟二维整型数组-CSDN博客那么要将多个函数的地址存储到数组中,这个数组该如何定义呢?函数指针数组的定义把多个函数......
  • c语言(7.24)
    今天学习了指针的两个作用#include<stdio.h>voidgetmaxandmin(intarr[],intlen,int*max,int*min);intmain(){ //指针作用2: //函数返回多个值 //练习: //定义一个函数,求数组的最大值和最小值,并进行返回 intarr[]={1,2,3,4,5,6,7,8,9}; intlen=sizeof......
  • 【C语言】动态内存管理详解!!!
    目录为什么存在动态内存分配?动态内存函数的介绍常见的动态内存错误几个经典的笔试题 C/C++程序的内存开辟柔性数组为什么存在动态内存分配?在动态内存函数之前,我们知道的内存开辟有两种。1. 在栈空间上开辟四个字节。intval=20;2. 在栈空间上开辟10个字节的......
  • 2个月搞定计算机二级C语言——真题(1)解析
    1.前言大家好,我是梁国庆。这段时间将持续发布计算机二级C语言真题的解析,想要同步练习,需要资源包的朋友可以跳转免费获取——《3个月搞定计算机二级C语言——准备工作》。现在恐怕要改为2个月搞定计算机二级C语言了,不过没有关系,干就完了!本篇博客将解析计算机二级C语言......