C学习笔记
文章平均质量分 55
chkrok
这个作者很懒,什么都没留下…
展开
-
百练3727摘花生
前几天在百练看到这题,题意主要是输入一个二维数组,行和列不大于100,求从左上点到右下点经过的所有节点值之和的最大值,行走路线只能向下或向右。 由于有多组数据需要输入,我就用一个函数处理每组数组,函数参数为一个数组,和其行和列数。没想到,一开始就在函数声明上花了好些时间,int getmax(int,int,int * [100]),其实这个错误的,*应该用括号括起来,int getmax(int,int,int (*)[100]),前者表示参数为100指针数组,后者表示为参数为一个指原创 2011-02-11 10:44:00 · 643 阅读 · 0 评论 -
scanf用法
<br />scanf是常用的C语言输入函数,正确定义为 : int scanf(char *format, ...),所有的参数都应该是指针,当 scanf函数扫描完其格式串,或者碰到某些输入无法与格式控制说明匹配的情况时,该函数将终止,同时,成功匹配并赋值的输入项的个数将作为函数值返回,所以,该函数的<br />返回值可以用来确定已匹配的输入项的个数。。如果到达文件的结尾,该函数将返回EOF。注意,返回EOF 与0 是不同的,0 表示下一个输入字符与格式串中的第一个格式说明不匹配。下一次调用scanf函原创 2011-02-11 11:58:00 · 570 阅读 · 0 评论 -
判断一个数是否为素数的函数
int ss(int n) { int i; double j=sqrt(n); if(n1/n"); exit(1); } for (i=2;i重点在于 j=sqrt(n)这句,初学者一般用j=n,懂一点用j=n/2紧凑的程序不一定是好程序,最关键的要是有效率。昨天看到一题,计算1-2+3-4+5-6......+n的值,n的值很大 ,意思是如果简单地执行一个个加减的话,耗时会长,这样的函数就很好:long fn(long n) {原创 2011-02-13 20:35:00 · 1684 阅读 · 0 评论 -
低级错误,野指针赋值
<br />char *ch;<br />gets(ch);<br /> <br />char *ch;<br />scanf("%s",ch);<br /> <br />char *ch[100];<br />gets(ch[i]);<br /> <br />全是错的原创 2011-02-17 08:52:00 · 628 阅读 · 1 评论