产生随机数

int t = (int)time(NULL);
srand(t);
int num = rand() % 10;

利用keybd_event函数自动打印,mouse_event函数保存文件

#include <Windows.h>

void data(char str);

int main()
{
WinExec("notepad",SW_MAXIMIZE);
for (int i = 0x30; i < 0x3A; i++)
{
printf("i = %d", i);
data(i);
Sleep(1000);
}
SetCursorPos(10, 30); //指定鼠标光标位置
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
Sleep(1000);
SetCursorPos(10, 200);
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
Sleep(1000); data(VK_RETURN);
Sleep(1000); data(0x30);
Sleep(1000);
data(VK_RETURN);
Sleep(1000);
return 0;
} void data(char str)
{
keybd_event(str, 0, 0, 0);
keybd_event(str, 0, 2, 0);
}

实现小数转整数的四舍五入功能

double f = 2.65;
int result = f + 0.5;
printf("四舍五入后的值为:%d\n", result);

查找数组中第二大值

int array[10] = { 23, 44, 21, 65, 87, 7, 33, 89, 57, 93};
int max
int smax;
max = array[0] > array[1] ? array[0] : array[1];
max = array[0] > array[1] ? array[1] : array[0];
for (int i = 2; i < 10; i++)
{
if (max < array[i])
{
smax = max;
max = array[i];
} else if ((max > array[i]) && (smax < array[i]))
{
smax = array[i];
}
}
printf("smax = %d\n", smax);

幂函数的实现(以2为例)

int getPow(int n)
{
if (n == 0)
return 1;
int val = 2;
for (int i = 0; i < n; i++)
val *= 2;
return val;
}

十进制转二进制

void to_binary(unsigned int n)
{
unsigned int i = n % 2;
if (n >= 2)
to_binary(n / 2);
printf("%c", i + 0x30);
}

正整数n以内的素数和

此程序有很多地方可以优化

int sum(int n)
{
if (n == 2)
return 2;
else
{
if (isprime(n, 2))
return n + sum2(n - 1);
else
return sum2(n - 1);
}
} int isprime(int n, int key) //判断你是否为素数,是返回1,不是返回0
{
if (n < 2)
return 0;
if (n == key)
return 1;
if (n % key == 0)
return 0;
else
return isprime(n, key + 1);
}
``` ### 实现字符串拷贝函数strcpy
```c
void strcpy(char *dest, const char *src)
{
while(*dest++ = *src++);
}
``` ### 实现字符串拷贝函数strncpy
```c
void strncpy(char *dest, const char *src,int n)
{
while((*dest++ = *src++) && (n--));
*(dest - 1) = 0;
}
``` ### 实现文件拷贝
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h> int main(int argc, char *args[])
{
if (argc < 3)
{
return 0;
}
FILE *p1 = fopen(args[1], "rb");
FILE *p2 = fopen(args[2], "wb");
if ((p1 == NULL) || (p2 == NULL))
{
return 0;
} char buf[1024] = { 0 };
while (!feof(p1))
{
size_t size = fread(buf, 1, sizeof(buf), p1);//由于fread与feof的差异造成fread到结尾与feof不同
fwrite(buf, 1, size, p2);//从fread读了多少字节出来,就往fwrite写多少个字节
}
fclose(p1);
fclose(p2);
return 0;
}
``` ### windows和linux都可用的代码
在gcc编译时候添加参数`-DLINUX`,以下代码就可在不改变源代码情况下,同时在windows和linux下编译通过
```c
#include <stdio.h> #ifdef LINUX
#include <unistd.h>
#else
#include <Windows.h>
#endif int main()
{
while(1)
{
printf("a\n");
#ifdef LINUX
sleep(1);
#else
Sleep(1000);
#endif
}
return 0;
}
``` ### 两头堵模型
1. 初始化条件
2. strstr strchr
3. 让指针重新初始化
```c
void main()
{
char *p = " abcd ";
int ncount = 0;
int i, j;
i = 0;
j = strlen(p) -1;
while (isspace(p[i]) && p[i] != '\0')
{
i++;
}
while (isspace(p[j]) && j>0 )
{
j--;
}
ncount = j - i + 1;
printf("ncount:%d \n", ncount);
}
```

C学习笔记-小程序(长期更新)的更多相关文章

  1. 13本热门书籍免费送!(Python、SpingBoot、Entity Framework、Ionic、MySQL、深度学习、小程序开发等)

    七月第一周,网易云社区联合清华大学出版社为大家送出13本数据分析以及移动开发的书籍(Python.SpingBoot.Entity Framework.Ionic.MySQL.深度学习.小程序开发等) ...

  2. 与大家分享学习微信小程序开发的一些心得

    因为我也才开始学习微信小程序不久,下文也是现在的一时之言,大家有不同的想法也可以在评论里共同交流讨论,希望文章能给大家提供一点点帮助. 最近接触到了一些前端框架,像Vue.js,React,发现小程序 ...

  3. 一个C#程序员学习微信小程序路由的笔记

    路由大家应该都知道,在微信小程序也是有的,毕竟它是单页面应用程序.在WeChat中有五种跳转方式,分别是wx.switchTab.wx.reLaunch.wx.redirectTo.wx.naviga ...

  4. 微信小程序学习笔记1--小程序的代码构成

    最近打算学习一下微信小程序,看了微信公众平台的文档感觉还比较简单,就从这个方向重新找回学习的状态吧: 1.先了解一下小程序的代码构成: 创建项目后会看到四种后缀的文件: .json 后缀的 JSON ...

  5. 一个C#程序员学习微信小程序的笔记

    客户端打开小程序的时候,就将代码包下载到本地进行解析,首先找到了根目录的 app.json ,知道了小程序的所有页面. 在这个Index页面就是我们的首页,客户端在启动的时候,将首页的代码装载进来,通 ...

  6. [译]聊聊C#中的泛型的使用(新手勿入) Seaching TreeVIew WPF 可编辑树Ztree的使用(包括对后台数据库的增删改查) 字段和属性的区别 C# 遍历Dictionary并修改其中的Value 学习笔记——异步 程序员常说的「哈希表」是个什么鬼?

    [译]聊聊C#中的泛型的使用(新手勿入)   写在前面 今天忙里偷闲在浏览外文的时候看到一篇讲C#中泛型的使用的文章,因此加上本人的理解以及四级没过的英语水平斗胆给大伙进行了翻译,当然在翻译的过程中发 ...

  7. 微信小程序之更新上一页数据(十二)

    小程序开发过程中经常有这种需求,需要把当前页面数据传递给上一个页面,但是wx.navigateBack()无法传递数据. 一般的办法是把当前页面数据放入本地缓存,上一个页面再从缓存中取出. 除此之外还 ...

  8. 新人学习微信小程序开发之框架篇

    大家好我是智哥,一名专注于前端领域的一名码农. 咱们今天主要来说说微信小程序, 最近一段时间微信群里的小程序,小游戏各种分享是突然一下子就爆发了,现在来看小程序作为微信的重磅功能无疑又是下一个风口.咱 ...

  9. CUBRID学习笔记 44 UPDATE 触发器 更新多表 教程

    cubrid的中sql查询语法UPDATE c#,net,cubrid,教程,学习,笔记欢迎转载 ,转载时请保留作者信息.本文版权归本人所有,如有任何问题,请与我联系wang2650@sohu.com ...

随机推荐

  1. C语言编译错误:Variably modified array at file scope

    今天在编译一段C源程序时,遇到编译错误提示 error: variably modified 'data' at file scope.原因在于代码头部有这样几行: +; int data[maxsi ...

  2. python中模块、包、库的区别和使用

    模块:就是.py文件,里面定义了一些函数和变量,需要的时候就可以导入这些模块. 包:在模块之上的概念,为了方便管理而将文件进行打包.包目录下第一个文件便是 __init__.py,然后是一些模块文件和 ...

  3. ueditor上粘贴从word中copy的图片和文字

    图片的复制无非有两种方法,一种是图片直接上传到服务器,另外一种转换成二进制流的base64码目前限chrome浏览器使用首先以um-editor的二进制流保存为例:打开umeditor.js,找到UM ...

  4. 并发编程入门(一): POSIX 使用互斥量和条件变量实现生产者/消费者问题

    boost的mutex,condition_variable非常好用.但是在Linux上,boost实际上做的是对pthread_mutex_t和pthread_cond_t的一系列的封装.因此通过对 ...

  5. struts2 404错误

    action类必须放在xxxx.xxx.xxx.xxx.action  包下才可以.

  6. bzoj5457

    城市 HYSBZ - 5457 有n座城市,m个民族.这些城市之间由n-1条道路连接形成了以城市1为根的有根树.每个城市都是某一民族的聚居 地,Master知道第i个城市的民族是A_i,人数是B_i. ...

  7. Clion + 树莓派/Ubuntu 远程调试

    Clion进行远程调试 在大三下半学期学习Linux高级编程时,老师布置的作业要在linux机器上进行,当时完成的十分艰苦,调试难受的一匹,当时就萌生了这个想法,因为Jetbrains官方文档的晦涩( ...

  8. 宝塔apache设置泛目录的反向代理/莲花泛目录

    反向解析目标站-泛目录站一般用ip或者ip:端口来搭建,这样可以节省一个域名,当然也可以用域名,看个人爱好.主站和泛站可以同一个服务器和可以不同服务器,看个人实际情况.先来看宝塔的反向代理的步骤:点击 ...

  9. ios端浏览器拍照上传到服务器,图片被旋转90度 php 解决方案

    1.可以通过前端进行解决,本案例通过后端解决的 判断请求的浏览器的ua,如果是ios浏览器则进行90度旋转 重点来了: 必须确保检测的图片是ios设备上传的完整图片,不要在前端压缩过的,因为压缩后的图 ...

  10. solr系列之solr-5.5.5 window单机版默认Jetty安装

    Solr5.5.5单机部署 Solr5和Solr4有很大区别,最为明显的就是Solr5已经可以独立部署,从Solr5开始,Solr已经不再以war包形式部署,Solr已经成为了一个独立的java服务端 ...