C语言
逆风行砾
逆水行舟,不进则退
展开
-
阿拉伯数字与中文数字之间的转换
#include <stdio.h>#include <string.h>int main(){ int i=5; int count = 0; char unit[10][4]={"零","壹","贰","叁","肆","伍","陆","柒","原创 2018-07-31 14:31:20 · 1099 阅读 · 0 评论 -
C语言--动态分配内存空间的使用方法
#include <stdio.h>#include <stdlib.h>int main(){ int i; int *nums; //为指针分配动态的内存空间 // nums = (int *)malloc(sizeof(int)*5); 这个没有初始化 nums = calloc(5,sizeof(int)*...原创 2018-10-28 10:11:10 · 2660 阅读 · 0 评论 -
C语言数组的增加-删除--以及经典冒泡排序算法
虽然是最基本的,但成功靠的是一点一点的积累#include <stdio.h>#include <stdlib.h>int main(){ int i,j; int temp; int count = 5; int nums[] = {23,5,87,29,9}; int delete_nums; i...原创 2018-10-21 21:45:50 · 1371 阅读 · 0 评论 -
增删改查以及冒泡算法的综合案例
若有不理解之处欢迎留言--- 给以解答,,这个代码也存在部分bug,但是练习增删改查冒泡的好案例#include <stdio.h>#include <stdlib.h>#include <string.h>#include <windows.h>#include <mmsystem.h>#pragma comment(l...原创 2018-10-26 23:55:34 · 383 阅读 · 0 评论 -
C语言中register类型的变量有什么意义
一般情况下,变量的值是存储在内存中的,CPU 每次使用数据都要从内存中读取。如果有一些变量使用非常频繁,从内存中读取就会消耗很多时间,例如 for 循环中的增量控制: int i;for(i=0; i<1000; i++){ // Some Code}执行这段代码,CPU 为了获得 i,会读取 1000 次内存。为了解决这个问题,可以将使用频繁的变量放在CPU的通...转载 2018-10-27 16:46:20 · 936 阅读 · 0 评论 -
指针的三种访问数组方法
三种之中常用的是*ptr_num(i+1)#include <stdio.h>#include <stdlib.h>int main(){ int i; //数组名就是首地址,数组就是块连续的内存空间 double num[5]={12,34,66,77,88}; double *ptr_num = num; for(...原创 2018-10-27 18:53:54 · 2865 阅读 · 0 评论 -
C语言数组与指针的基本关系
奇数的逆序写法----偶数这个有bug,这里主要是熟练指针的用法,针对偶数,等后续学习中再做补充 #include <stdio.h>#include <stdlib.h>#define N 5int main(){ int i,temp; int nums[N]={22,77,44,55,88}; int *ptr_num_start...原创 2018-10-27 19:29:58 · 179 阅读 · 0 评论 -
求字符串长度
#include <stdio.h>int numbers(char * str){ int i = -1; while(str[++i]); return i;}int main(void){ char ch[1000]; printf("enter a string:"); scanf("%s",ch); p...原创 2019-04-10 15:22:40 · 235 阅读 · 0 评论 -
有一个字符串,包含n个字符。写一个函数,将此字符串中从第m个字符开始的全部字符复制成为另一个字符串
#include <stdio.h>void copy(char *,int, int);void main(void){ int n,m; char string[100]; printf("enter a number of n:"); //n是字符串一共的个数 scanf("%d",&n); printf("enter a...原创 2019-04-10 15:35:37 · 14618 阅读 · 2 评论 -
有n个整数,使前面各数顺序向后移m个位置,最后m个数变成最前面m个数
#include <stdio.h>void move(int [20],int,int);int main(void){ int numbers[20]; int i,n,m; printf("how many numbers:"); scanf("%d",&n); printf("input %d numbers\n",n);...原创 2019-04-09 19:10:02 · 1615 阅读 · 0 评论 -
C 语言---数字与中文大写数字之间的转换(实用)
#include <stdio.h>#include <stdlib.h>#include <string.h>int main(){ int i=0,count=0; //计数器 char nums[10][4]={"壹","贰","叁","肆","伍","陆&qu原创 2018-10-28 09:28:00 · 2163 阅读 · 0 评论 -
for循环显示星星经典案例
#include <stdio.h>#include <stdlib.h>int main(){ int i,j; for(i=0;i<5;i++){ //外层循环控制行 for(j=0;j<=3-i;j++) //内层循环控制列 { printf(" "); ...原创 2018-10-20 20:57:49 · 2098 阅读 · 0 评论 -
C语言continue的使用案例
#include <stdio.h>#include <stdlib.h>int main(){ int age; int count = 0; for(int i=0; i<5;i++) { printf("请输入玩家的年龄:"); scanf("%d",&age); ...原创 2018-10-20 20:09:30 · 8838 阅读 · 0 评论 -
C 语言动态分配内存的使用
#include <stdio.h>int main(){ int i; int * nums; //为指针动态分配了20个字节的空间 nums = (int *)malloc(sizeof(int)*5); //等价于 int nums[5]; //为指针分配空间以后,指针就变成了数组 for(i=0; i<5;...原创 2018-07-31 14:56:59 · 175 阅读 · 0 评论 -
C语言求二维数组的鞍点
鞍点,即该位置上的元素在该行上最大,在该列上最小。也可能没有鞍点。 在算这个对于初学者来说 可能有点绕,但仔细思考便会理解了 #include<stdio.h> #define N 3 #define M 4 int main() { int i,j,k,max,min; int array[N][M]; printf("请输...原创 2018-09-07 19:38:41 · 20410 阅读 · 8 评论 -
实现字符串的加密与解密
#include <stdio.h>#include <stdlib.h>#include <string.h>#define USERNAME admin#define PASSWORD admin#define KEY 5char * Encrypt(char password[]); //加密char * DeEncrypt(char p...原创 2018-09-08 15:19:07 · 342 阅读 · 0 评论 -
数组和指针基础原理解释
比较注意的是数组名其实是数组元素的首地址 可以发现字符串常量和字符指针的取值都是一样的 对于指针用法要注意,(实在是很灵活,容易成为野指针)...原创 2018-09-08 15:41:57 · 208 阅读 · 0 评论 -
用结构体指针实现动态录入并对其中一项求平均值
头文件 #ifndef HERO_H_INCLUDED#define HERO_H_INCLUDEDtypedef struct _pubTime{ int year; int month; int day;}PubTime;typedef struct _hero{ char * name; char sex; char *...原创 2018-09-09 14:37:31 · 549 阅读 · 0 评论 -
补码原理——负数为什么要用补码表示
文首 我们都知道负数在计算机中是以补码(忘了补码定义的戳这里)表示的,那为什么呢?本文尝试了解补码的原理,而要想理解它,首先得理解算术中“模”的概念。所以首先看一下什么是模,然后通过一个小例子来理解补码。1 模(Modulo)1.1 什么是模数In mathematics, modular arithmetic is a system of arithmetic for int...转载 2018-10-06 20:11:13 · 201 阅读 · 0 评论 -
一维数组的经典案例练习
1、题目要求:输入一组数的5个元素,并依次往后移一个位置,再将第5个数据放在第一个存储单元#include <stdio.h>#include <stdlib.h>#define N 5/*输入一组数的5个元素,并依次往后移一个位置,再将第5个数据放在第一个存储单元*/int main(){ int i,j; int temp; //...原创 2018-10-22 12:43:57 · 8811 阅读 · 0 评论 -
随机函数的详细讲解
在C语言中,rand()函数可以用来产生随机数,但是这不是真真意义上的随机数,是一个伪随机数,是根据一个数,我们可以称它为种子,为基准以某个递推公式推算出来的一系数,当这系列数很大的时候,就符合正态公布,从而相当于产生了随机数,但这不是真正的随机数,当计算机正常开机后,这个种子的值是定了的,除非你破坏了系统,为了改变这个种子的值,C提供了srand()函数,它的原形是void srand( int...转载 2018-10-23 00:32:19 · 2904 阅读 · 0 评论 -
输入两个正整数m和n,求其最大公约数和最小公倍数。
#include<stdio.h>#define STRAS "*****************************"int gcd(int a, int b); //最大公约数int lcm(int a, int b); //最小公倍数int main(void){ int n, m; int result_gcd, result_lcm; ...原创 2019-04-16 18:42:20 · 981 阅读 · 0 评论