[C语言]程序练习(一)

你好,这里是争做图书馆扫地僧的小白。

个人主页:争做图书馆扫地僧的小白_-CSDN博客

目标:希望通过学习技术,期待着改变世界。

目录

前言

一、常量练习

(一)整型常量

(二)浮点型常量

(三)字符常量

(四)字符串常量

二、变量练习

(一)变量的初始化和赋值

(二)强制类型转换

(三)隐式强转

总结


前言

本系列的程序练习,是对应本人C语言专栏里面的学习笔记的相关程序,后续逐步将整理每处知识点对应的程序练习,希望对学习C语言的朋友们有所帮助。

本篇将包含常量练习里面的整型常量、浮点型常量,字符常量和字符串常量,变量练习的变量的初始化和赋值,强制类型转换,隐式强转。具体的知识点请看C语言学习笔记(上)-CSDN博客


提示:以下是本篇文章正文内容,下面案例可供参考

一、常量练习

(一)整型常量

cpp 复制代码
#include <stdio.h>

int main()
{
	//常量一般是用来给变量赋值的
	short a = 100;
	printf("a = %d\n", a);

	long int a1 = 1000;
	printf("a1 = %ld\n", a1);

	long long int a2 = 0x12AA;
	printf("a2 = %#llx\n", a2);

	return 0;
}

(二)浮点型常量

cpp 复制代码
#include <stdio.h>

int main()
{
	float a = 3.1415926;
	printf("a = %f\n", a);  //默认显示6位小数,超过的部分,四舍五入

	//可以使用 %.nf 的方式,用来显示需要显示的小数位数
	printf("a1 = %.2f\n", a1);// 3.14

	double a2 = 3.1415926;
	printf("a2 = %lf\n", a2);// 默认也是显示6位小数
	printf("a2 = %.2lf\n", a2);// 3.14

	//指数形式
	float a3 = 314;
	printf("a3 = %e\n", a3);//可以按指数形式输出

	//也可以使用指数常量给变量赋值
	float a4 = -5.67e-3;
	printf("a4 = %f\n", a4);//-0.005670

	return 0;
}

(三)字符常量

cpp 复制代码
#include <stdio.h>

int main()
{
	//定义一个字符类型的变量
	char a1 = 'A';
	printf("a1 = [%d] [%c]\n", a1, a1);// 65  A

	//字符常量可以参与运算
	char a2 = 'M'+1;  
	printf("a2 = [%d] [%c]\n", a2, a2);

	char a3 = 67;//使用字符的ascii码给变量赋值
	printf("a3 = [%d] [%c]\n", a3, a3);

	return 0;
}

(四)字符串常量

cpp 复制代码
#include <stdio.h>

int main()
{
	//字符串直接输出
	printf("hello\n");
	printf("%s\n", "hello");

	//可以将字符串保存在字符数组中,通过数组进行输出
	char str[32] = "hello";
	printf("str = [%s]\n", str);

	//也可以定义一个指针直接指向字符串常量
	char *p = "hello,world"; 
	printf("p = %s\n", p);
 
    //注意:C语言中遇到 '\0' 就结束
	char *p1 = "hel\0lo";
	printf("p1 = %s\n", p2);//hel

	return 0;
}

二、变量练习

(一)变量的初始化和赋值

cpp 复制代码
#include <stdio.h>

int main()
{
	//初始化:在定义变量的同时,给变量赋一个初值
	int a1 = 100;
	printf("a1 = %d\n", a1);

	//如果定义变量没有初始化,则存储随机值
	int a2;
	printf("a2 = %d\n", a2);
    //初始化可以用0初始化
	int a3 = 0;
	printf("a3 = %d\n", a3);

	//变量是可以被重新赋值
	a3 = 520;	
	printf("a3 = %d\n", a3);

	//变量之间可以做运算
	a2 = a1+a3;
	printf("a1 = %d  a2 = %d  a3 = %d\n", a1, a2, a3);
	
	//一行中可以定义多个变量,用逗号分隔
	int a4,a5,a6;

	return 0;
}

(二)强制类型转换

cpp 复制代码
#include <stdio.h>

int main()
{
	int a = 3;
	int b = 2;
	float ret1 = a/b;	//ret1 等于1
	printf("ret1 = %f\n", ret1);
	
	//将a和b的类型转换成 float 来参与本次运算
	//相当于 把 1.500000 赋值给 ret2
	float ret2 = (float)a/(float)b;
	printf("ret2 = %f\n", ret2);//1.500000

	//a和b的类型不会改变
	printf("a = %d  b = %d\n", a, b);//3  2

	return 0;
}

(三)隐式强转

cpp 复制代码
#include <stdio.h>

int main()
{
	float a = 3.1415;
	int b = a;	//相当于取整的操作
	printf("a = %f  b = %d\n", a, b);

	return 0;
}

总结

以上就是今天要讲的内容,本文基于博主之前的博客,写的对应于第一篇笔记的程序练习,希望对学习C语言的小伙伴有帮助。如果可以的话,动动你们的小手帮我点点赞和关注。

相关推荐
tz_zs2 分钟前
【AI编程】使用笔记:AI编程项目文档体系与框架
笔记·ai编程
霖霖7144 分钟前
【ESP32笔记】I2S的音频录制与播放
笔记·单片机·mcu·音视频
qq_284274055 分钟前
电动机控制与PLC入门:自耦减压启动、反接制动与速度继电器KS,及PLC诞生、定义、特点与分类(含考点)
笔记·学习·自动化·制造
sejinan5 分钟前
新版!IPTV直播源列表 V1.7 正式发布:接口大厅与会员定制生态解读
开发语言·php
我喜欢就喜欢9 分钟前
DeepSeek Harness 开源贡献手记:从零到合入主线的完整历程
开发语言·人工智能·copilot
Source.Liu25 分钟前
【A11】服务器底层权限表笔记
运维·服务器·笔记
阿阳微客26 分钟前
steam游戏搬砖用选品软件照搬就可以么?经验帖
学习·游戏
“AI国潮设计-小江”1 小时前
《【AIGC实战】Python+SDXL批量生成“猫咪英歌舞蛋挞”IP,附保持角色一致性的代码逻辑》
开发语言·人工智能·python·prompt·aigc
weixin_BYSJ19871 小时前
【计算机毕设】基于Spring_Boot_Vue的马拉松报名与选手成绩追踪系统05445
java·vue.js·spring boot·学习·spring·django·课程设计