自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 堆排序

#include <stdio.h>#include <assert.h>#include <windows.h>void PrintArray(int* array, int size){ int i = 0; for(; i < size; i++) printf("%d ", array[i]); ...

2019-06-26 13:01:05 73 1

原创 希尔排序

希尔排序,又称缩小增量排序,是对插入排序的优化。那么缩小增量是怎么体现出来的呢?前面我们讲过的插入排序,是直接对一组数据进行操作,这样会慢很多;希尔排序会按照一定的间隔把数组分为几段,比如说现在有一个数组array[] = {2,3,6,8,9,4,7,1,5},我们先以3为间隔把数组分为三组,那么分好之后的三组数据分别为{2,8,7}、{3,9,1}、{6,4,5},对分好的数据,利用插入排序的...

2019-06-25 23:59:58 54

原创 插入排序

每一次将一个待排序的元素,按照其排序码的大小,插入到前面已经排好序的一组元素的合适位置上去,直到元素全部插完为止。这里其实是把一组元素看成两组,第一组是已经排好序的,而另一组就是无序的。第一次比较的时候,第一个元素被看为一组已序的,第二个元素往后就被看做是无序的。每次都用无序组的第一个元素与有序组的元素从后往前依次比较,当找到合适的位置的时候,就把它安插进去。#include <s...

2019-06-25 16:21:49 66

原创 冒泡排序

冒泡排序的思想:在一组包含N个数的数组中 ,进行N-1趟比较。每趟比较都是从数组头部开始,用相邻的两个数进行比较,假如我们按照从大到小排列——也就是用降序的方式,那么每一趟中每次比较之后都把小的元素放在后边,这样一趟比较完之后,一组中最小的数字就被排在了数组的最后边。接下第二趟来比较剩下的N-1个数字,以此类推,直到整个数组有序。#include <stdio.h>#in...

2019-06-25 15:53:08 53

原创 栈的基本操作

<stack.h>#pragma once#define MAX_SIZE 100typedef int DataType;typedef struct Stack{ DataType _array[MAX_SIZE]; int _top;//表示两个含义:(1)有效元素个数(2)栈顶下标}Stack;void StackInit(Stack*...

2019-05-20 17:10:50 105

原创 C语言知识思维导图

2018-05-05 20:44:20 341 1

原创 Linux中,进入目录、在目录中执行增删查(cd, touch, ls, rm, mv等)改文件动作, 需要哪些权限.

       权限,就是对某事项进行决策程度和范围,通俗来说,就是规定哪些事情能做、哪些事情不能做。那么,在Linux中有哪些基本权限呢?进入目录需要哪些权限、在目录中执行增删查(cd, touch, ls, rm, mv等)改文件动作需要哪些权限?一、Linux中的基本权限(r、w、x)       1、读(r/4):read对于文件来说,具有读取文件内容的权限;对于目录来说,具有浏览该目录信息...

2018-03-02 15:44:01 904

原创 求Sn=a+aa+aaa+aaaa+aaaaa的前五项之和

#includeint main(){ int a,n,tn=0,sn=0; int i=1; printf("a,n="); scanf("%d %d",&a,&n); while(i<=n) { tn=tn+a; sn=sn+tn; a=a*10; i=i++; } printf("%d",sn); return 0;}     上述代码可以求出Sn=a

2017-12-31 23:12:15 359

原创 输出0到999之间的水仙花数

水仙花数只是自幂数的一种,严格来说三位数的3次幂数才成为水仙花数。所以,0到999之间的水仙花数其实是100到999之间的数字,这是本题的着手点。       下面我们就来写代码:#includeint main(){ int i,j,k,n; for(n=100;n<=999;n++) { i=n/100;//得到百位上的数字 j=n/10-i*10;得到十位上的数字

2017-12-31 23:01:44 676

原创 数组小结

数组是一组相同元素的集合。        数组在创建时,[ ]中一定要给常量,不能给变量。        在绝大多数表达式中,数组名的值是指向数组第一个元素的指针。这个规则只有两个例外:1、sizeof(arr),即sizeof返回整个数组所占用的字节而不是一个指针所占用的字节;2、&arr,单目操作符&返回一个指向数组的指针。         除了优先级不同以外,下标表达式array

2017-12-04 14:56:13 121

原创 1、求n!;2、求1!+2!+3!+......+n!之和

求阶乘与求阶乘的和:这个题目中,求阶乘是基础,求阶乘的和只不过是求阶乘的简易加工。           1、求阶乘           阶乘,就是把一个正整数从1依次乘到他本身。下面程序中循环部分的的product变量就是需要求的阶乘。这种算法是很省事的,在满足条件的情况下,假设第一次求得了3的阶乘,下次进入循环的就是4,那么用先前求得的3的阶乘乘以4,就得到了4的阶乘......

2017-12-03 23:58:59 5965

原创 在屏幕上输出以下图形 * *** ***** ******* ......

#include#include int main(){ int i = 0; int line = 0; scanf("%d",&line); for(i = 0; i < line; i++)//对上半部分进行打印 { int j = 0; for(j = 0; j < line-i-1; j++)//先打空格 { printf(" "); } for(

2017-11-26 00:16:51 25330 2

原创 编写程序数一下1到100的所有整数中出现了多少次数字9

#includeint main(){ int i = 0; int count = 0; for(i = 0; i < 100; i++) { if(i%10 == 9)//统计个位是九的数的个数 { count++; } if(i/10 == 9)//统计十位是九的数的个数 { count++; } } printf("%d\n", coun

2017-11-25 22:29:54 1039

原创 计算1/1-1/2+1/3-...+1/99-1/100的值

#includeint main(){ int i = 0; float sum = 0; int flag = 1; for(i=1;i<=100;i++) { sum += flag*1.0/i; flag = -flag; } printf("%f", sum); getchar(); return 0;}

2017-11-25 22:20:27 1424

原创 将数组A中的内容与数组B中的内容进行交换(两个数组一样大)

首先定义并输出两个一样大(即长度一样大)的数组,再利用创建临时变量的方法交换两个数组的内容,然后再将交换后的数组输出#includeint main(){int arr1[5]={1,2,3,4,5};int arr2[5]={4,5,6,7,8};int i=0;int tmp=0;int len;len=sizeof(arr1)/sizeof(arr1[0]

2017-11-25 22:07:02 471

原创 求两个数的最大公约数

         求两个数的最大公约数有多种算法,我在这里用辗转相除法来解决这道题目,还有一种算法是更相减损法,有兴趣的朋友可以了解一下。辗转相除法的具体做法是:用较小数除最大数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,知道最后余数为0为止。#include&lt;stdio.h&gt;int main(){    int m, n;//t为临时变量 ...

2017-11-24 21:10:13 137

原创 将三个数按从小到大输出

1、这道题,我采用了(1)创建临时变量的方法来解决;(2)用swap()函数来解决(注意:在引用数学函数的时候,必须引用“#include&lt;stdio.h&gt;”)。(1)这个方法在前面的《给定两个整形变量的值,将两个值的内容进行交换》中介绍过,有兴趣的朋友可以看看,加深一下对着种方法的理解。(1)创建临时变量#include&lt;stdio.h&gt;#include&lt;windo...

2017-11-24 20:26:48 754

原创 求10 个数中的最大值

1、这个题目的做法都在下面代码的注释中,大家可以一步一步来体会#include#includeint main(){int i = 0;int max = 0;//定义一个maxint arr[10];//定义一个包含10个元素的数组printf("请输入十个数:");//提示话语,可要可不要for(i = 0; i {scanf("%d", &arr[

2017-11-24 19:53:26 2159

原创 给定两个整形变量的值,将两个值的内容进行交换

对于这道题,我将采取两种方法进行解决:1、创建临时变量,通过临时变量来交换两个整形变量的值;2、不创建整形变量,用抑或操作符“^”(注意,不是数学中的次方运算符)来进行两个值得内容交换。下面展示具体做法。         1、创建临时变量#include#includeint main(){int a = 10;int b = 20;int tmp;//创建临时变量

2017-11-24 19:19:56 230

原创 C语言操作符小结

C语言运算符是说明特定操作的符号,它是构造C语言表达式的工具。C语言的运算异常丰富,除了控制语句和输入输出以外的几乎所有的基本操作都为运算符处理。除了常见的三大类,算术运算符、关系运算符与逻辑运算符之外,还有一些用于完成特殊任务的运算符,比如位运算符。C语言操作符具体分为以下类别:1、算数操作符,2、移位操作符,3、位操作符,4、赋值操作符,5、单目操作符,6、关系操作符,7、逻辑操作符,

2017-11-22 16:17:41 167

原创 用c语言输出1000到2000年之间的闰年

闰年,就是(1)能被4整除但是(2)不能被100整除,或者(3)能被400整除的年份。在写这个代码的时候一定要理解清楚闰年的含义以及满足成为闰年的条件之间的关系,这是这个代码的重点。#includeint main(){int year=0;int count=0;for(year=1000;year{if(((year%4==0)&&(year%100!=

2017-11-18 15:06:55 6136

原创 用c语言输出九九乘法口诀表

1、这是一篇很基础的代码,然而麻雀虽小五脏俱全,这也是编程路上必不可少的一个锻炼啊。所以拿出来放在这里,和大家分享。#include&lt;stdio.h&gt;int main(){int i=0;for(i=1;i&lt;=9;i++){int j=0;for(j=1;j&lt;=i;j++){printf("%d*%d=%d ",i,j,i*j);}printf(...

2017-11-18 14:44:04 19453 4

原创 用c语言输出100到200之间的素数

    素数,就是除了1和他本身,不能被其他数整除的数字。 今天我们将用三种不同的方法来实现“输出100到200之间的素数”,请往下看:1、第一种方法就是用100到200之间的每个数字,除以2到其本身前面的那一个数字,如果此过程中出现整除的现象,则该数不是素数。如果没有整除的现象,则该数为素数输出。#include&lt;stdio.h&gt;int main(){ int i=0;...

2017-11-18 11:58:23 94293 6

原创 用c语言输出1到100中的奇数

今天,我们来看一下如何用C语言来写出‘输出1到100中的奇数’这道题目的代码。1、奇数,就是除以2之后有余数的整数,照这个思路,我们来写第一种代码。#includeint main(){ int i; for(i=1;i {  if(i%2 != 0)  {   printf("%d\t",i);  } } return 0;}下面我们来

2017-11-14 16:41:55 33329

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除