[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语言的小伙伴有帮助。如果可以的话,动动你们的小手帮我点点赞和关注。

相关推荐
ZZZ_O^O3 分钟前
【贪心算法第五弹——300.最长递增子序列】
c++·学习·算法·leetcode·贪心算法
&黄昏的乐师5 分钟前
Opencv+ROS实现颜色识别应用
人工智能·opencv·学习·计算机视觉
Koishi_TvT8 分钟前
蓝桥杯c++算法秒杀【6】之动态规划【下】(数字三角形、砝码称重(背包问题)、括号序列、异或三角:::非常典型的必刷例题!!!)
c语言·c++·算法·性能优化·蓝桥杯·动态规划·c
孤独且没人爱的纸鹤8 分钟前
C++ 二叉搜索树(Binary Search Tree, BST)深度解析与全面指南:从基础概念到高级应用、算法优化及实战案例
c语言·数据结构·c++·算法
Heris9912 分钟前
零基础3分钟快速掌握 ——Linux【终端操作】及【常用指令】Ubuntu
linux·c语言·开发语言·ubuntu
蒙特网站15 分钟前
网站布局编辑器前端开发:设计要点与关键考量
前端·javascript·学习·html
@曲终34 分钟前
C语言学习 12(指针学习1)
c语言·经验分享·笔记·学习
凡人的AI工具箱35 分钟前
40分钟学 Go 语言高并发:Pipeline模式(一)
开发语言·后端·缓存·架构·golang
SRC_BLUE_1739 分钟前
[网安靶场] [更新中] UPLOAD LABS —— 靶场笔记合集
笔记
YuanLiu_22741 分钟前
代码随想录算法训练营第十三天(递归遍历;迭代遍历;统一迭代;层序遍历)
java·数据结构·笔记·算法·leetcode