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

相关推荐
Scott9999HH4 小时前
【IIoT流量实战】蒸汽管道阀门全关却仍有流量?用 Python 实现涡街信号 FFT 频谱分析与温压全补偿积算网关,深度拆解靠谱的涡街流量计厂家硬核技术标准
开发语言·python
码智社5 小时前
AES加密原理详解及Java实现加解密实战
java·开发语言
AI云海5 小时前
python 列表、元组、集合和字典
开发语言·python
克里斯蒂亚诺更新5 小时前
ruoyi角色权限的对应关系
笔记
萧瑟余晖6 小时前
JDK 26 新特性详解
java·开发语言
马优晨6 小时前
Freemarker 完整讲解(后端 Java 模板引擎)
java·开发语言·freemarker·freemarker 完整讲解·freemarker模板引擎
a1117768 小时前
2FA 验证码生成器(github登录验证 app)
笔记·学习
我的xiaodoujiao8 小时前
API 接口自动化测试详细图文教程学习系列32--Allure测试报告2
python·学习·测试工具·pytest
人邮异步社区8 小时前
怎么把C语言学到精通?
c语言·开发语言
心平气和量大福大9 小时前
C#-WPF-控件-TextBox 数据绑定
开发语言·c#·wpf