C语言
做图像加密的Tara
Keep learning
展开
-
(代码练习)打印整数二进制的奇数位和偶数位---C语言
要求:获取一个整数二进制序列中所有的偶数位和奇数位,分别打印出二进制序列思路:通过移位和与操作符来实现。要打印的位和1相与的结果是它本身,所以移位再和1相与可得结果。实现:...原创 2020-12-14 12:52:12 · 220 阅读 · 0 评论 -
(代码练习)求两个数二进制中不同位的个数---C语言
要求:两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?思路:将两个数进行按位异或,此时相同的二进制比特位清零,不同的二进制比特位为1;采用按位与统计异或完成后结果的二进制比特位中有多少个1。实现:#include <stdio.h>#include <windows.h>int DifferBit(int a, int b){ int temp = a^b; int count = 0; while (temp){ temp = te原创 2020-12-13 21:01:09 · 212 阅读 · 0 评论 -
三子棋游戏---C语言
好久没有写博客了,经过一段时间的学习,我仍然菜得不得了,甚至比以前更菜了。如果做人可以不用发sci,不用发EI,不用写毕业论文,该有多么快乐啊!猪的日子多么简单啊,一天吃吃喝喝睡睡,KPI就完成了,也不知道它们快不快乐。三子棋游戏的意思就是,大家上高中那会儿经常会和前后左右桌在草稿纸上大战几百回合的,并没有什么技术含量的,但是我经常输的,那种游戏。这玩意儿用C怎么实现呢?哎呀,其实我现在还做不了这么漂亮的。不管三七二十一,先把步骤捋一捋。1、绘制棋盘(坐标实现)2、用户落子3、判断(赢了没)原创 2020-11-17 17:01:52 · 217 阅读 · 0 评论 -
(代码练习)二分查找---C语言
在一个整形有序数组中查找具体的某个数二分查找:在一个有序的序列中,找某个数据是否在该集合中,如果在打印该数据在集合中的下标,否则打印找不到具体找的方式:找到数组的中间位置检测中间位置的数据是否与要查找的数据key相等a: 相等,找到,打印下标,跳出循环b: key < arr[mid], 则key可能在arr[mid]的左半侧,继续到左半侧进行二分查找c: key > arr[mid], 则key可能在arr[mid]的右半侧,继续到右半侧进行二分查找如果找到返回下标,否则原创 2020-10-19 14:56:47 · 814 阅读 · 0 评论 -
(代码练习)猜数字游戏---C语言
思路其实很简单,就是在1~100之间产生一个随机数,然后让你去猜。首先来个最简单的版本:#include <stdio.h>#include <windows.h>#pragma warning(disable:4996)int main(){int num = rand()%100+1; //产生一个在1~100之间的随机数int input = 0;while (1){ printf("请输入猜的数字:"); scanf("%d", &input);原创 2020-10-19 10:22:08 · 391 阅读 · 0 评论 -
(代码练习)九九乘法表---C语言
思路:两个循环进行控制外层循环控制打印多少行内部循环控制每行打印多少个表达式以及表达式内容#include <stdio.h>#include <windows.h>int main(){int i = 0; //控制行数for(i=1; i<=9; i++){//打印每一行内容,每行有i个表达式int j = 0;for(j=1; j<=i; j++){printf("%d*%d=%2d “, i, j, i*j);}printf(”\原创 2020-10-19 08:26:47 · 242 阅读 · 0 评论 -
(代码练习)求最大值---C语言
思路:采用循环的方式输入一个数组使用max标记数组中的最大值,采用循环的方式依次获取数组中的每个元素,与max进行比较,如果arr[i]大于max,更新max标记的最大值,数组遍历结束后,max中保存的即为数组中的最大值。#include <stdio.h>#include <windows.h>int main(){int arr[10] = { 0 };int i = 0;int max = 0;for (i = 0; i<10; i++){ s原创 2020-10-16 18:05:13 · 1341 阅读 · 0 评论 -
(代码练习)分数求和---C语言
计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值,打印出结果/*思路:从上述表达式可以分析出a. 该表达式主要由100项,基数项为正,偶数项为负设置一个循环从1~100,给出表达式中的每一项:1.0/i, 注意此处不能使用1,否则结果全部为0然后使用flag标记控制奇偶项,奇数项为正,偶数项为负然后将所有的项相加即可*/#include <stdio.h>#include <windows.h>int main(){原创 2020-10-14 14:12:38 · 3723 阅读 · 1 评论 -
(代码练习)1~100中出现数字9的个数---C语言
出现9的数字有哪些?出现整十之前的数字就是含有9的数字。所以方法一:打印整十前面的数。运行结果:这种方法显得不够专业,而且漏掉了90及其以后十位为9的数!!下面介绍方法二:思路:给一个循环从1遍历到100,拿到每个数据后进行一下操作a. 通过%的方式取当前数据的个位,检测个位数据是否为9如果是,给计数器加1b. 通过/的方式取当前数据的十位,检测十位数据是否是9,如果是,给计数器加1循环一直继续,直到所有的数据检测完,所有9的个数已经统计在j计数中。#include <原创 2020-10-14 13:40:59 · 1416 阅读 · 0 评论 -
(代码练习)打印素数/质数---C语言
首先明确素数的概念:质数(prime number)又称素数,有无限个。一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,换句话说就是该数除了1和它本身以外不再有其他的因数;否则称为合数。其次是定范围,因为素数有无限个。这里定为100~200之间。方法一:试除法:...原创 2020-10-14 11:11:29 · 1214 阅读 · 0 评论 -
(代码练习)闰年---C语言
首先明确闰年的概念:普通闰年:公历年份是4的倍数的,且不是100的倍数,为普通闰年(如2004年、2020年就是闰年)。世纪闰年:公历年份是整百数的,必须是400的倍数才是世纪闰年(如1900年不是世纪闰年,2000年是世纪闰年)。也就是说:四年一闰;百年不闰,四百年再闰以1000~2000为例:要满足 year%40 && year%100!=0 || year %4000vs2013试一下运行结果当然其实有更简单的写法:#include <stdio.h&原创 2020-10-14 09:34:02 · 1681 阅读 · 0 评论 -
(代码练习)最大公约数---C语言
vs2017#include <stdio.h>#include <windows.h>#pragma warning(disable:4996)int main(){int m, n, temp, i;printf(“请输入两个整数\n”);scanf("%d%d\n", &m, &n);//这里也可以把scanf换成scanf_s,然后删掉上面#pragma warning那一句if (m < n){temp = m;m = n;n原创 2020-10-14 08:59:39 · 246 阅读 · 0 评论 -
基础学习总结---C语言
上次【1】讲到了函数,今天接着更新。数组定义一组相同类型元素的集合。如:int array[10]={1,2,3,4,5,6,7,8,9,10};数组的使用举个栗子:翻车了,结果全挤在一堆了,重来!操作符简要介绍算数操作符 :加+ 减- 乘* 除/ 取模%移位操作符 :右移>> 左移<<位操作符 :按位与& 按位或| 按位异或^赋值操作符 :=原创 2020-10-10 17:52:26 · 166 阅读 · 0 评论 -
C语言基础
什么是C语言The first C program数据类型变量,常量字符串,转义字符,注释选择语句循环语句函数数组操作符常见关键字define定义常量和宏什么是C语言c语言是一门通用的计算机编程语言,广泛应用于底层开发。其设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。The first C program数据类型charshortintlonglong longfloatdouble..原创 2020-09-30 22:41:49 · 2352 阅读 · 1 评论