你好,这里是争做图书馆扫地僧的小白。
个人主页:争做图书馆扫地僧的小白_-CSDN博客
目标:希望通过学习技术,期待着改变世界。
目录
前言
一、常量练习
(一)整型常量
(二)浮点型常量
(三)字符常量
(四)字符串常量
二、变量练习
(一)变量的初始化和赋值
(二)强制类型转换
(三)隐式强转
总结
前言
本系列的程序练习,是对应本人C语言专栏里面的学习笔记的相关程序,后续逐步将整理每处知识点对应的程序练习,希望对学习C语言的朋友们有所帮助。
本篇将包含常量练习里面的整型常量、浮点型常量,字符常量和字符串常量,变量练习的变量的初始化和赋值,强制类型转换,隐式强转。具体的知识点请看C语言学习笔记(上)-CSDN博客
提示:以下是本篇文章正文内容,下面案例可供参考
一、常量练习
(一)整型常量
#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;
}
(二)浮点型常量
#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;
}
(三)字符常量
#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;
}
(四)字符串常量
#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;
}
二、变量练习
(一)变量的初始化和赋值
#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;
}
(二)强制类型转换
#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;
}
(三)隐式强转
#include <stdio.h>
int main()
{
float a = 3.1415;
int b = a; //相当于取整的操作
printf("a = %f b = %d\n", a, b);
return 0;
}
总结
以上就是今天要讲的内容,本文基于博主之前的博客,写的对应于第一篇笔记的程序练习,希望对学习C语言的小伙伴有帮助。如果可以的话,动动你们的小手帮我点点赞和关注。