C语言
昵称格式错误
这个作者很懒,什么都没留下…
展开
-
怎么设置dos框的背景色和前景色~
锣鼓喧天,鞭炮齐鸣,感谢百度百科~1.调用color函数法1加入#include 头文件,没有此头文件则无法调用本文使用的函数。2在你所需要改变窗口颜色的位置调用函数 system("color xx") xx分别指的是背景颜色和文字(前景)颜色。x为一位16进制数,即1-f都可以使用。可以转载 2017-02-03 23:59:37 · 818 阅读 · 0 评论 -
关于逗号运算符~
#include#include#include#includeint main(void){ int a = 3,b=4; printf("%d\n", (a++,b++,a+b));//最后的逗号运算符表达式一定要打括号,因为前面的一个参数中的转换说明里已经提示了计算机后面有一个参数 //如果不打括号,原创 2017-03-17 11:58:06 · 2046 阅读 · 0 评论 -
字符串查找函数——strchr()和strrchr()~
C语言strchr()函数:查找某字符在字符串中首次出现的位置下一节>分享到:QQ空间新浪微博腾讯微博豆瓣人人网C语言中文网推出辅导班啦,包括「C语言辅导班、C++辅导班、算法/数据结构辅导班」,全部都是一对一教学:一对一辅导 + 一对一答疑 + 布置作业 + 项目实践 + 永久学习。QQ在线,随时响应!头文件:#includ转载 2017-03-07 16:22:52 · 846 阅读 · 0 评论 -
关于EOF和Ctrl+Z~
#include#include#includeint main(void){ int ch;//可以留意一下为什么这里用int型的变量哦 while ((ch = getchar()) != EOF) { putchar(ch); } system("pause"); return 0;}原创 2017-03-28 17:25:52 · 1565 阅读 · 1 评论 -
编写和用户进行交互的程序时,一定要考虑到交互各种蠢萌的人群~
写在前面,在编写交互程序时,应事先预料到用户可能的输入错误,然后设计程序去处理用户的错误输入。错误版:#include#include#includevoid display(char cr, int lines, int width);int main(void){ int ch; int rows, cols; printf("输入一个字符两原创 2017-03-28 22:02:18 · 580 阅读 · 0 评论 -
创建动态数组~
错误的创建方式#include#includeint main(void){ int n,i; scanf_s("%d", &n, 5); int num[n]; for (i = 0; i < n; i++) { scanf_s("%d", &num[i], 5); } system("pause"); return 0;}正确的创原创 2017-03-24 20:56:40 · 297 阅读 · 0 评论 -
strlen()&sizeof在静态数组和动态数组中的应用~
一.strlen()&sizeof在静态数组中的应用#include#include#includeint main(void){ char ch[20] = "hello";//可以在初始化的时候直接对数组赋一个字符串; //但是不能ch="hello" printf("strlen(ch)=%d\nsizeof(ch)=%d\n", strlen(ch), si原创 2017-03-25 13:47:42 · 1081 阅读 · 0 评论 -
关于指数记数法在%la,%le,%lf下的输出~
#includeint main(void){ double a = 1.0364e4; printf("%la\n", a); printf("%le\n",a); printf("%lf\n", a); getchar(); return 0;}//输出结果为//0x1.43e000p+13//1.036400e+004//10364.0原创 2017-03-04 13:07:34 · 3663 阅读 · 0 评论 -
关于printf()函数的点(还有各种各样的转换说明等你发现哦~)
一:在转换说明中指定精度输出(下面是引用的百度的回答~~) 从上面的几个结果,你可以看出来:%m.ns:m是整个输出的个数,比如上面的10(包括空格的输出);//n是显示的个数;如果n大于m,按n的个数输出;n小于m,则前面输出空格(你是看不见空格的),后面输出字符,字符+空格的个数=m的值;百度给我们的回答是这样的,原创 2017-03-04 09:42:26 · 1189 阅读 · 0 评论 -
关于逆序输出字符串~
一:用数组逆序输出字符串#include#include#includeint main(void){ int i,k; char ch[100]; scanf_s("%s", ch, 100); k = strlen(ch); for (k-=1; k >= 0; k--) { printf("%c",ch[k]); } printf原创 2017-03-25 18:54:52 · 882 阅读 · 0 评论 -
用printf函数打印较长的字符串的三种方法~
#include#include#include#includeint main(void){ printf("Here is one way to printf a "); printf("long string.\n"); printf("Here's another way to print a \long string.\n"); //即原创 2017-03-16 12:17:42 · 5762 阅读 · 0 评论 -
_Bool,BOOL,bool的区别~
【 bool、BOOL 和 _Bool 的区别 】bool 类型在 C++ 中以关键字的形式被支持,表示布尔类型,其对应变量的值只有真(true)和假(false)两种值。BOOL类型 ·字节长度在头文件 中定义为 typedef int BOOL;在头文件 中定义为 typedef long BOOL;BOOL 类型的长度视实际环境来定,一般可认为是 4 个字节。转载 2017-03-01 20:35:47 · 1766 阅读 · 0 评论 -
怎么在循环中精简代码——将循环测试和更新循环放在一起~
先来看一个代码#include#include#includeint main(void){ char ch; ch = getchar(); while (ch != '\n') { if (ch == ' ') putchar(ch); else putchar(ch + 1); ch = getchar(); }原创 2017-03-25 21:42:44 · 359 阅读 · 0 评论 -
从一个代码块看几个问题~
#include#include#include#includeint main(void){ bool isPrime;//像这种只用取两个值,只用占一个字节的变量就可以设置成bool类型 long num;//为了扩大num可以取值的范围,故使用long型的变量 while (isPrime=true,scanf("%ld",&num)==1)//一定要记得,l原创 2017-03-27 12:49:42 · 254 阅读 · 0 评论 -
求输入的一串数中的最大值和最小值的办法~
一:在已知输入数的范围的时候~~#include#include#include#include#include/*已知输入数的范围,求输入数的最小值和最大值的办法。*/#define MAX 100.0#define MIN 0.0int main(void){double sum = 0;double score;double min原创 2017-03-27 12:56:29 · 2650 阅读 · 0 评论 -
关于scanf()函数的一些点~
一:#include#include#include#includeint main(void){ int num1,num2; char ch1,ch2,ch3; scanf_s("%d", &num1,20); scanf_s("%c", &ch1,20); scanf_s("%c", &ch2,20); scanf_s(" %c", &ch3,2原创 2017-03-16 15:34:38 · 309 阅读 · 0 评论 -
关于浮点值的上溢和下溢和不符合“常识”的情况&整数上溢和整数下溢~
一:关于浮点值的上溢上溢:是指由于数字过大,超过当前类型所能表示的范围这种行为在过去是没定义的,不过现在C语言规定,在这种情况下会给toobig赋上一个表示无穷大的特定值,而且printf显示该值为inf或infinity。比如对于vs2010来说,如果一个值发生了上溢,显示的就是1.#INF00e+000~二:关于浮点数的下溢下溢:是指由于数值太小,低于当前类型所能表原创 2017-03-04 14:56:00 · 8003 阅读 · 1 评论 -
EasyX 框架实现透明图片显示的 trick
看到的一篇无敌好的文章!!!EasyX 框架实现透明图片显示的 trick 2016-2-17 WED 04:45 小技术►C很多学校教授 C++ 图形编程时,为了规避 Windows 下 VC++ 较为复杂的绘图 API,都会(强制)要求学生使用 EasyX 这一绘图框架。该框架十分简陋地实现了初学者所需的图形功能。转载 2017-02-16 19:44:25 · 7868 阅读 · 0 评论 -
在一个项目的不同位置去定义同一个变量~
#include#include#includeint N=30;int f(void);int main(void){ printf("%d\n", f()); printf("%d\n", N); int N = 18; printf("%d\n", N); getchar(); return 0;}int f(void){ in原创 2017-02-27 20:47:13 · 415 阅读 · 0 评论 -
在VC上可以运行的烟花代码~
# define PI 3.14#include#include#include#include#include#include#include#includevoid star(int x,int y);void drawstar();void Putstar(void);void starflower();int main(){int原创 2017-02-01 16:12:55 · 23245 阅读 · 8 评论 -
C语言图形函数代码~持续更新中
下面总结的是一些C语言图形函数代码~持续更新中#include#include#include#include#includeint main(void){ initgraph(640,480); setfillcolor(YELLOW); solidcircle(100,100,50); fillcircle(200,200,50); c原创 2017-02-01 23:30:56 · 3905 阅读 · 2 评论 -
让我们讲一讲可移植类型嘛~
#includeusing namespace std;#include#include#include//里面定义类输出可移植类型的宏,也支持可移植类型,相当于就是支持stdint.h里面定义的可移植类型 //这个是针对于整型提出的可移植类型,不包括实型//写在前面,下面输出的时候用a=,b=c=确实不太好啊,不要介意,明白意原创 2017-03-01 21:57:17 · 1142 阅读 · 0 评论 -
在VC里装了easyx并不是万事大吉了~
easyX是基于C++开发的,与TC的图形库一定程度上保持一致,但是不代表相同的代码可以同样地运行!参考当然是可以参考的,另外,如果你想移植,可以参考下面的[使用技巧]将 TC 下的绘图和游戏程序移植到 VC 下 Turbo C(简称tc)是 dos 时代经典的编译器,学习编程时,有很多图形类和游戏类的程序都是用 tc 编写的。由于 c 语言标准的不完善,这些程序大多数都不能直接在 vc 里面编转载 2017-02-02 00:28:13 · 4352 阅读 · 0 评论 -
C语言图形编程中的绘图函数~
、屏幕和视口设置与清除函数 36. setviewport() 设置图形视口函数 37. clearviewport()清除图形视口函数 38. cleardevice() 清除屏幕函数 39. getviewsettings() 获取图形视口设置函数二、调色板和颜色函数 40. setpalette()设置调色板函数 41. set原创 2017-02-01 16:19:44 · 12025 阅读 · 0 评论 -
关于setbkcolor()的误区~
一:先来说说关于获取颜色与设置颜色的区别~ 获取颜色就是的到所需背景色或前景色的返回值,无参数,eg:BLUE就是1。 设置颜色就是自己去设置背景色或前景色的颜色,参数为color,无返回值。 二:关于setbkcolor()的误区~ setbkcolor()函数的确是设置背景色的函数,那这个背景色是dos框的背景色?是printf()函数输出东原创 2017-02-04 10:35:40 · 8421 阅读 · 0 评论 -
怎么用循环实现dos框前景色的变换~
一:关于sprintf_s()函数~作用:将 sprintf(A,“ ” )字符串里面的内容写入A中例子:char* who = "I";char* whom = "CSDN";sprintf_s(s, "%s love %s.", who, whom); //作用:"I love CSDN. " 这字符串写到s中二:为什么要用sprintf_s()函数~因为syst原创 2017-02-04 11:47:23 · 181 阅读 · 0 评论 -
VS奇奇怪怪的函数unsafe~
像scanf函数,sprintf函数都会被标以不安全的错误~那么该怎么办呢?===================================================================百度的回答:scanf()在读取时不检查边界,所以可能会造成内存泄露,所以VS2013提供了scanf_s()来替代,在调用时,必须提供给scanf_s一个数字以原创 2017-02-04 11:55:38 · 282 阅读 · 0 评论 -
左值,右值,数据对象~
数据对象 首先先明确数据对象的概念,数据对象指的是储存数的存储空间。左值 左值具有两个特性:1.可修改性,又称为可修改左值,对象定位值 2.是数据对象的标识符,应具有标识符的特性 eg.a=b=c=3;//这个语句是可以的,因为赋值表达式的运算顺序是从右到左 //所以是3赋给c,c赋给b,b赋给a 但是eg.a=b=c原创 2017-03-17 20:01:40 · 533 阅读 · 0 评论 -
关于C语言的副作用和序列点~
******副作用: 指的是对数据对象(http://blog.csdn.net/qq_37385726/article/details/62896617)或文件的修改。 对于计算机来说,函数也好,表达式也好,语句也好(关于什么是表达式,什么是语句请戳:http://blog.csdn.net/qq_37385726/article/details/62897923)它原创 2017-03-17 20:29:33 · 740 阅读 · 0 评论 -
什么叫表达式?什么叫语句? ~
关于这个问题不要觉得不重要,其实大有可以说的地方,这是一个很基础的东西,却有很多人都不是很清楚的了解。*表达式是由运算符和运算对象组成的,单独的一个运算对象也可以叫做表达式,这是最简单的表达式.eg.4,4+2,c=3+7,3>5````````````//这里又有一个小点,c=3+7这个表达式的返回值是左值的值即10*语句:在C语言中,语句大部分是由分号结尾的。原创 2017-03-17 20:28:32 · 16918 阅读 · 2 评论 -
刷新缓冲区~
关于刷新缓冲区,目前的我还没看到有什么必要,因为感觉不用函数刷新的就很普遍啦~~首先说一说什么叫缓冲区:在执行printf()输出函数的时候,将要输出的东西会发向输出缓冲区(在c++里叫输出流)。在执行输入的时候,将要输入的东西会发向输入缓冲区(在c++里叫输入流)。那什么又是刷新缓冲区呢:刷新缓冲区指的是输出时将输出缓冲区里面的内容传给屏幕,显示出来;将输入缓冲区里面的内容传给变量。达到原创 2017-03-04 20:19:41 · 1367 阅读 · 0 评论 -
统计单词数和行数~
一:只要求统计一行中的单词数的时候#include#include#include#include#include#define SPOT '.'//规定遇到.的时候结束/*只要求统计一行内的单词数的时候*/int main(void){char ch[100];char character;int temp;int num_line = 0原创 2017-03-27 13:08:16 · 536 阅读 · 0 评论