c
#花生酥
c,c++的学习者
展开
-
windows上利用C++语言查询设备 (windows,vs2010,SetupDiEnumDeviceInfo)
代码功能将windows设备遍历一次,然后将结果直接存放到map容器中,需要清楚其中一个设备的个数,直接通过map可以查询#include <Windows.h>#include <setupapi.h>#include <string>#include <vector>#include<map>#include<stdio.h>#pragma comment(lib, "setupapi.lib")using nam原创 2021-05-19 14:51:13 · 686 阅读 · 0 评论 -
windows系统下向NTP服务器请求时间代码 C语言,vs2010,windows,socket,udp
#include <stdio.h>#include <stdlib.h>#include <time.h>#ifdef _WIN32#include <string.h>#include<WS2tcpip.h>#include <windows.h>#pragma comment(lib,"ws2_32.lib")#else#include "logLib.h"#include "socket.h"#endif.原创 2021-05-19 12:23:12 · 517 阅读 · 1 评论 -
C/C++下利用UDP实现通信(windows10,vs2010)
每一天都值得去热爱!udp客户端代码#include <stdio.h>#include <stdlib.h>#include <time.h>#include <string.h>#include<WS2tcpip.h>#include <windows.h>#pragma comment(lib,"ws2_32.lib"...原创 2021-05-07 13:22:13 · 1336 阅读 · 5 评论 -
求字符串个数问题----两头堵模式
#include "stdafx.h"#include"string.h"#include<stdio.h>#include<stdlib.h>#include<ctype.h>//求非空字符串的长度int _tmain(int argc, _TCHAR* argv[]){ printf("hello,stranger\n"); char *p=" iloveyou "; int count=0; int...原创 2021-03-27 13:16:31 · 108 阅读 · 0 评论 -
编译器警告:C4996
你的代码使用标记为已弃用的函数、类成员、变量或 typedef。通过使用__declspec(deprecated)修饰符或 c + + 14 特性来弃用符号[[deprecated]]。实际的 C4996 警告消息由deprecated声明的修饰符或特性指定。(意思就是这个代码以前可以用,我们更新了,这个函数不安全,会提出警告)本质没有任何影响,关了这个警告,不影响程序的运行解决方法:若要在 Visual Studio IDE 中关闭整个项目的警告:1.打开项目的 "...原创 2021-03-13 15:34:16 · 865 阅读 · 0 评论 -
我的第一个MFC文件
接触到c++的前端,感觉和C#有点相似,可能是主观意愿的问题吧,感觉c#更加放便一点。void C计算器Dlg::OnBnClickedButton1(){ // TODO: 在此添加控件通知处理程序代码 int number1=GetDlgItemInt(IDC_EDIT1); int number2 = GetDlgItemInt(IDC_EDIT2); SetDlgItemInt(IDC_EDIT3, number1 + number2);}void...原创 2021-02-16 13:38:23 · 78 阅读 · 0 评论 -
递归—基本递归
递归基本递归:一种强大的方法,允许一个问题以其自身越来越小的形式定义自己。在计算机科学领域,我们通过使用递归函数来解决带有递归性质的问题,也就是用函数调用自身。基本递归:例如以递归方式求一个数的阶乘#include<stdio.h>int fact(int n) { if (n < 0) return 0; else i...原创 2020-02-22 21:59:00 · 303 阅读 · 0 评论 -
C语言指针一般错误解释
1.char *sptr="abc",*tptr;*tptr=sptr;编译时错误。因为*tptr是一个字符,而sptr是一个指向字符的指针,代码试图将一个字符指针赋给一个字符,会产生类型冲突。2.char *sptr="abc",*tptr;tptr=sptr;没有错误。因为tptr和sptr都字符型指针。3.char *sptr="abc",*tptr;*tptr...原创 2020-02-17 22:00:39 · 410 阅读 · 0 评论 -
蜡烛问题
某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了236根蜡烛。请问,他从多少岁开始过生日party的?请填写他开始过生日party的年龄数。#include<stdio.h>int main(){ int age = 1; int sum = 0; for (age = 1;age<...原创 2019-11-23 22:15:36 · 702 阅读 · 0 评论 -
年龄问题
某君新认识一网友。当问及年龄时,他的网友说:我的年龄是个2位数,我比儿子大27岁,如果把我的年龄的两位数字交换位置,刚好就是我儿子的年龄”请你计算:网友的年龄一共有多少种可能情况?提示:30岁就是其中一种可能哦.1.#include<stdio.h>int main(){ int age = 99;//最大的二位数 int num ...原创 2019-11-23 21:39:54 · 324 阅读 · 0 评论 -
进制转化,对新手比较友好那种
二进制与十进制的转化: *128 *64 *32 *16 *8...原创 2019-09-14 10:18:01 · 104 阅读 · 0 评论 -
c语言判断闰年
Year%4==0&&Year%100!=0||Year%400==0上面的这个式子可以看出来吗?那能判断出优先顺序吗?(((Year%4)==0&&((Year%100)!=0))||(Year%400==0)注意:在复杂的表达式中,就避免利用运算符优先级来生成正确的结果。#include<stdio.h>int main(){...原创 2019-05-17 20:33:57 · 4026 阅读 · 0 评论 -
求最大公约数
#include"stdio.h"int main(){ int m,n,r,temp; printf("请输入 两个正整数m和n:"); scanf("%d%d",&m,&n); if(n>m){ temp=m; m=n; n=temp; } r=m%n; whil...原创 2019-03-25 20:29:35 · 144 阅读 · 0 评论 -
数组的应用
编写程序,实现 自然数按以下要求输出程序:1.按逆序分两行输出元素值。2.在一行上输出 所有下标为偶数的数组元素。3.在一行上输出 所有值 为偶数的数组元素。代码如下:#include<stdio.h>#define N 20int main(){ int x[N],i; for(i=0;i<N;i++) ...原创 2019-03-12 22:08:13 · 981 阅读 · 0 评论 -
c语言中实现超链接(多文件程序的编译和连接)
一个实用价值的c语言应用程序往往较大,需要划分成不同的文件,那么如何把这些文件编译,连接成一个统一的可执行的文件并运行呢? c语言提供了编译预处理“#include“文件名””来实现‘文件包含”的操作,其特点是一个源文件可以将另外一个源文件的全部包含进来。预处理程序将#include语句所指的文件<源程序>代码完全嵌于编译程序中“#include"所在的位置,以参加正式编译形成目...原创 2018-10-27 13:15:49 · 5005 阅读 · 0 评论 -
利用c语言判断素数问题
~输入一个整数,判断是否为素数分析:素数只能被1和自身整除的数。判断一个数是不是素数,是用2和这个数之间的所有的数来求余,看其是否能被整除,如果不能整除,认为这个数为素数,如果不能则提前结束。#include"stdio.h"int main() { printf("\t\t\t\t\thello world\n"); int a, i; do { printf("input...原创 2018-11-02 21:18:06 · 31049 阅读 · 2 评论 -
用c语言折半查找算法(二分查找)
二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好,占用系统内存较少;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查...原创 2018-11-04 21:59:07 · 7444 阅读 · 0 评论 -
用c语言打印九九乘法表
分析:这是一个典型的使用循环嵌套的题目。把题目分成两部分:被乘数和乘数。被乘数的变化是从1变化到9,乘数的变化是根据被乘数而来。这样就决定了被乘数的变化做为外循环,乘数的变化作为内循环。1*1=12*1=2 2*2=4 3*1=3 3*2=6 3*3=9 4*1=4 4*2=8 4*3=12 4*4=16...#include"stdio.h"int...原创 2018-11-12 12:44:49 · 48086 阅读 · 10 评论 -
从键盘上输入一个十进制的整数,求该整数的每一位数字之合
分析:无论是个几位数,都有一个共同的特点,那就是个位容求出来,只需要对10求余,便可以得到个位数,然后要做的便是使得十位变个位,那就只要让该数对10进行整除便可,接下来的关键是整除到什么时候 结束。这个循环的结束条件就是循环的结束条件。很容易想到,就是整除到结果为0时结束循环。#include<stdio.h>int namesum(int x){ int s=0,a;...原创 2018-11-16 22:21:18 · 2988 阅读 · 0 评论 -
直接插入排序算法
直接插入排序(Straight Insertion sort)基本思想:把数组中待排序的n个元素看成一个有序表和无序表,开始时有序表只有一个元素,而元素表中包含有n-1个元素。排序过程中,每次取出无序表中第一个元素,将它插入到有序表的适当位置上,使之成为一个新的有序表,这样经过n-1次的插入后,无序表变成为空表,而有序表包含有n个元素,至此排序完毕。存在的问题:如何将一个记录数插入到当...原创 2018-11-25 17:57:47 · 329 阅读 · 0 评论 -
穷举法实例
百鸡问题。公鸡每只5元,母鸡每只3元,小鸡3只一元。用一百元买100只鸡,则公鸡母鸡小鸡各能买多少只?分析:穷举法好理解,通俗易懂,但是对于时间上来讲,特别当数值非常多的时候,穷举法就显得开始特别慢了。include <stdio.h>int main(){ int cock,hen,chick,i=1; for (cock= ...原创 2018-12-02 18:13:51 · 3609 阅读 · 0 评论 -
输入20~100之间能被3整除但不能被7整除的数
分析:能被n整除的意思是指,对n求余等于0.能被3整除但是不能被7整除,也就是说两个条件同时成立,这就要用到逻辑与&&运算符。#include<stdio.h>void main(){ int i; for(i=20;i<=100;i++){ if(i%3==0&&i%7!=0) printf("%d ",i); ...原创 2018-11-30 22:32:32 · 3964 阅读 · 0 评论 -
无参宏定义二__c语言(3.12)
定义无参宏定义 的时候要注意几点:1.宏定义是用宏名来表示一个字符串,在宏展开中又以该字符取代宏名,这只是 一种简单的代换,字符中可以代替任何字符,可以是常数,也可以是表达式。2.宏定义千万不要在行末加分号,如果加了分号,它会自动连你添加的分号一起转换。3.引号引起来的,预处理程序不会对其做出宏代替的。4.一般用宏定义的,都习惯上用大写字母表示,写程序能见名知义的最好了。一个小...原创 2019-03-12 20:49:22 · 198 阅读 · 0 评论 -
一个简单的C语言图形化界面
#pragma comment(linker,"/SUBSYSTEM:Windows /ENTRY:mainCRTStartup")#include <windows.h>/* 使类名成为全局变量 */TCHAR szClassName[ ] = TEXT("WindowsApp");/* 这个函数由Windows内部函数DispatchMessage()调用 */LRESULT C...转载 2018-05-31 20:12:05 · 37202 阅读 · 3 评论