- 博客(33)
- 问答 (2)
- 收藏
- 关注
原创 c语言指针的基本应用
1:通过指针加减的方式访问数组,代码如下:首先是加法:#include<stdio.h>int main(){ int arr[] = { 0,1,2,3,4,5,6,7,8,9, }; int sz = sizeof(arr) / sizeof(arr[0]); int i = 0; int* p = arr; for (i = 0; i < sz; i++) { printf("%d ", *p); ...
2022-04-07 13:41:52
1186
原创 各种操作符
1:加减乘除操作符+ - * /其中要注意的是/操作符运算出的值与数据类型有关,比如int a=7/2 得到的是一个整数double a=7.0/2 得到的是一个小数2:取模操作符%该操作符只针对整形使用,如int a=5%2 得到的也是整形3:左移与右移操作符<<>>这两个操作符都是移动的是二进制位<<操作符:二进制序列左边丢弃,右边补0>>操作符:二进制序列右边丢弃,左边补原符号位需要注意的是左移
2022-04-04 14:47:46
392
原创 c语言实现简单的扫雷小游戏
扫雷是一个益智的小游戏,大家都玩过,这个小游戏也可以利用c语言编程的方式进行简单的运行,以下是代码:首先是头文件接下来创建main函数主体,其中引入test函数实现后续操作test函数内部引入菜单函数menu和游戏主要实现部分game函数,其中创建的随机值用于随机创建雷:菜单函数menu:game函数,其中引入多个自定义函数,在头文件中已声明:首先给定两个字符类型的数组,创建两个扫雷棋盘mine用以布置雷,每个元素为‘0’,用以展示给用户的棋盘show,每个元..
2022-04-03 20:49:14
4125
原创 c语言实现三子棋
头文件:main函数:test函数:内部引入menu游戏菜单函数,模拟用户输入场景,输入1则进入游戏,运行game函数,输入2退出游戏,输入其他重新输入,创建的随机值以后会用到menu函数:(游戏菜单):game函数:(游戏主要运行):game函数中引入多个自定义函数,已在头文件game.h中声明首先引入InitBoard函数初始化数组,使其内部每个元素都为空格,以便打印出棋盘:数组初始化完成后,插入DisplayBoard函数打印出棋盘,...
2022-04-02 17:40:29
4762
原创 数组的排序
使用冒泡排序的使数组元素以升序的方式进行排列代码如下:#include<stdio.h>void Add(int arr[],int sz){ int flag = 1; int i = 0; for (i = 0; i < sz - 1; i++) { int j = 0; for (j = 0; j < sz - 1 - i; j++) { if (arr[j] &...
2022-04-01 19:53:48
310
原创 一维数组和二维数组
一维数组:int arr[]={1,2,3}int arr1[3]={1,2,3}char arr2[]="abc"char arr3[3]={'a','b','c'}char arr4[]="abcd"char arr2[]="abc"与char arr3[3]={'a','b','c'}内存分配的区别:在arr2中有 a,b,c,\0 四个元素在arr3中只有a,b,c三个元素如以下代码:#include<stdio.h>int main(){.
2022-03-31 18:32:47
662
原创 C语言汉诺塔问题图文详解
设立三根柱子,pos1,pos2,pos3要求将pos1柱子上的三个圆盘按照顺序移动到pos3柱子上,并且每次只能移动一个圆盘,移动过程中每个柱子上的圆盘都保持下大上小的顺序排列当只有一个圆盘时,只需一步假设有三个圆盘a,b,c移动顺序如下:将a从A->C 将b从A->B 将a从C->B 将c从A->C 将a从B->A 将b从B->C 将a从A->C一共七步...
2022-03-30 14:40:35
2546
原创 c语言经典问题:青蛙跳台阶
递归实现方式:#include<stdio.h>int Add(int x){ if (x <= 3) return x; else return Add(x-2) + Add(x - 1);}int main(){ int n = 0; printf("请输入台阶数"); scanf_s("%d", &n); Add(n); printf("青蛙有%d种跳法\n", Add(n...
2022-03-29 18:12:39
857
原创 函数的递归
递归:程序调用自身的编程称为递归,以直接或间接的方式调用自身,通常把一个大型复杂的问题转化为一个与原问题相似的规模较小的问题求解,以少量程序描述多次重复计算,减少程序的代码量举例1:输入一个无符号的整型值,按照每一位的顺序输出,例如输入2345代码如下:#include<stdio.h>void add(int x){ if (x > 9) { add(x / 10); } printf("%d ", x % 10);}i...
2022-03-29 16:34:16
104
原创 自定义函数的应用
1:创建一个函数,使sum的值每次调用这个函数+1:#include<stdio.h>void Add(int* p){ *p += 1;}int main(){ int sum = 0; Add(&sum); printf("%d\n", sum); Add(&sum); printf("%d\n", sum); Add(&sum); printf...
2022-03-28 21:32:16
254
原创 练习:猜数字游戏(知识点:时间戳,随机数)
#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<time.h> //调用时间戳函数所需头文件#include<stdlib.h> //调用rand生成随机数所需头文件void menu()...
2022-03-27 17:29:18
3629
原创 利用二分查找算法找到有序数列中的某个元素
注:要求在一有序数列的数组中找到“7”,代码如下:#include<stdio.h>int main(){ int arr[] = { 1,2,3,4,5,6,7,8,9,10 }; //创建一个有序数组 int k = 7; int left = 0; ...
2022-03-26 12:13:43
812
原创 练习:1、求n的阶乘 2、阶乘相加
1、求n的阶乘,代码如下:#include<stdio.h>int main(){ int a = 1; int n = 0; int i = 0; printf("n="); scanf("%d", &n); for (i = 1; i <= n; i++) { a = a * i; } printf("n的阶乘为%d\n", a); retur...
2022-03-25 17:08:30
411
原创 for循环
1、利用for循环求0——100之间的奇数:#include<stdio.h>int main(){ int a = 0; for (a = 0; a < 100; a++) { if(a%2==1) printf("%d ", a); } return 0;}代码运行结果如下:2、利用for循环求0——100之间的偶数:#include<stdio.h>int main...
2022-03-25 13:44:24
822
原创 字符输入函数getchar;字符输出函数putchar
注:getchar函数一次只能接收一个字符;putchar函数一次只能输出一个字符;字符输入函数getchar:#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>int main(){ int ch = 0; char a[20] = { 0 }; int b=0; printf("...
2022-03-24 15:13:30
1902
原创 分支语句switch
#include<stdio.h>int main(){ int day = 0; scanf_s("%d", &day); switch (day) { case 1: printf("星期一\n"); break; case 2: printf("星期二\n"); break; case 3: printf("星期三\n"); b...
2022-03-23 18:52:43
113
原创 创建结构体
创建结构体是为了使c语言具有描述复杂类型的能力;以一本书为例:#include<stdio.h>struct BOOK{ char name[30]; int price;};int main(){ struct BOOK p1 = { "C语言从入门到精通",66 }; printf("书名:《%s》\n", p1.name); printf("价格:%d元\n", p1.price); p1.price = 20; p...
2022-03-22 19:33:07
3351
原创 指针变量(基础)
#include<stdio.h>int main(){ int a = 20; printf("地址:%p\n", &a); //&--取地址操作符 int *p = &a; //创建一个指针变量存放地址 printf("地址:%p\n", p); *p = 50; //*--解引用操作符 printf("a=%d\n", a); ret...
2022-03-21 17:25:31
262
原创 以#define定义宏的方式求两数较大值
#include<stdio.h>#define max(x,y)(x>y?x:y)int main(){ int a = 200; int b = 300; int MAX = 0; MAX = max(a, b); printf("较大值MAX=%d\n", MAX); return 0;}运行结果如下:#define定义的宏是带参数的...
2022-03-21 15:50:52
878
原创 static的用法
用法一:修饰局部变量,使局部变量的生命周期变长如下:#include<stdio.h>void test(){ static int a = 1; a++; printf("a=%d\n", a);}int main(){ int b = 0; while (b < 5) { test(); b++; } return 0;}运行结果如下:用法二:修饰全局变量,...
2022-03-20 13:58:40
498
1
原创 原码/反码/补码
对于整数,内存存储的都是二进制的补码正数的原码,反码,补码相同对于负数(举例为-2):原码——————直接按照正负写出的二进制序列10000000000000000000000000000010反码——————原码符号位不变,其他位按位取反11111111111111111111111111111101补码——————反码+111111111111111111111111111111110#include<stdio.h>int main(){ i...
2022-03-19 19:41:04
346
原创 输入学生成绩评定等级:90-100为A,80-89为B,60-79为C,小于60为D
#include<stdio.h>int main(){ float x=0; char y=0; printf("请输入成绩:\n"); scanf_s("%f", &x); if (x >= 0 && x <= 100) //&&表示变量x需同时满足x>=0,x<=100两个条件,以下同理 { if (x >= 90 && x <=...
2022-03-19 17:59:49
9102
1
原创 逻辑操作符
#include<stdio.h>int main(){ int a = 0; int b = 3; int c = a && b; printf("c=%d\n", c); int d = a || b; printf("d=%d\n", d); return 0;}运行结果如下:
2022-03-19 16:00:43
100
原创 利用条件操作符求较大值
#include<stdio.h>int main(){ int a = 200; int b = 300; int c = 0; c = (a > b ? a: b); printf("较大值为:%d\n", c); return 0;}运行结果为:
2022-03-19 15:47:48
219
原创 计算数组的大小以及计算数组个数
计算数组大小:#include<stdio.h>int main(){ intmax[10] = { 0 }; printf("数组大小为:%lld\n", sizeof(max)); return 0;}运行结果如下:计算数组的个数:#include<stdio.h>int main(){ int max[] = { 1,2,3,4,5,6,7,8,9,0 }; printf("数组个数为:%ll...
2022-03-18 14:11:23
726
原创 以自定义函数求两数较大值
#include<stdio.h>int max(int x, int y){ if (x < y) return y; else return x;}int main(){ int a = 10; int b = 20; int c = 0; c = max(a, b); printf("最大值=%d\n", c); return 0;}运行结果如下:...
2022-03-18 13:28:54
2380
2
原创 按位与/按位或/按位异或
#include<stdio.h>int main(){ int a = 3; int b = 5; int c = a & b;//按位与 int x = a | b;//按位或 int y = a ^ b;//按位异或 printf("c=%d\n", c); printf("x=%d\n", x); printf("y=%d\n", y); return 0;}运算结果如下:...
2022-03-14 22:17:21
392
原创 自定义数组与左移符
自定义数组:#include<stdio.h>int main(){ int x[3] = { 1 , 2 , 3 }; int a = 0; while (a < 3) { printf("%d ", x[a]); a++; } return 0;}运行结果如下:左移符:#include<stdio.h>int main(){ int a ...
2022-03-09 17:34:14
78
原创 自定义函数
#include<stdio.h>int ADD(int x,int y){ int z = x + y; return z;}int main(){ int a=10; int b=20; int c = 0; c = ADD(a,b); printf("c=%d\n", c); return 0;}代码运行结果如下:...
2022-03-08 17:49:11
160
原创 while 循环语句
#include<stdio.h>int main(){int a=0;printf("一万行代码\n");while(a<10000){printf("还要继续努力啊\n",a);a++;}if(a>=10000)printf("GOOD\n");return 0;}
2022-03-07 17:40:13
241
原创 if 与 else
#include<stdio.h>int main(){int a;printf("好好学习吗?(1/2)");scanf("%d",&a);if(a==1)printf("会越来越好的\n");elseprintf("你不该放弃\n");}return 0;
2022-03-07 17:32:40
84
原创 【无标题】
第一次接触博客,主要用于本人在c语言以及之后其他类型语言的学习过程中的记录。目前对于编程方面只是个小白,通过自学,从c语言开始。至今为止c语言掌握了一些基本的知识:1:c语言的基本语法。2:变量(局部变量、变量的类型char、int、short、long、long long、float、double)3:输出与输入类型代码(printf、scanf)4:常量(字面常量、const修饰的常变量、枚举常量、define定义的标识符常量)在之后的学习中发布博客会以代码的方式予以展示。
2022-03-07 17:21:42
290
空空如也
请问我发布的文章打代码时明明没有加入这个代码,发布后就出现了啊?
2022-03-26
c语言,请教一下这个警告是什么意思,怎么解决?软件vs2022
2022-03-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人