- 博客(6)
- 收藏
- 关注
原创 算法基础
<br />模运算:<br /><br />基本理论 基本概念: 给定一个正整数p,任意一个整数n,一定存在等式 n = kp + r ; 其中k、r是整数,且 0 ≤ r < p,称呼k为n除以p的商,r为n除以p的余数。 对于正整数p和整数a,b,定义如下运算: 取模运算:a % p(或a mod p),表示a除以p的余数。 模p加法:(a + b) % p ,其结果是a+b算术和除以p的余数,也就是说,(a+b) = kp +r,则(a + b) % p = r。 模p减法:(a-b)
2011-03-12 10:22:00 286
原创 低级错误,野指针赋值
<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 621 1
原创 判断一个数是否为素数的函数
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 1671
原创 scanf用法
<br />scanf是常用的C语言输入函数,正确定义为 : int scanf(char *format, ...),所有的参数都应该是指针,当 scanf函数扫描完其格式串,或者碰到某些输入无法与格式控制说明匹配的情况时,该函数将终止,同时,成功匹配并赋值的输入项的个数将作为函数值返回,所以,该函数的<br />返回值可以用来确定已匹配的输入项的个数。。如果到达文件的结尾,该函数将返回EOF。注意,返回EOF 与0 是不同的,0 表示下一个输入字符与格式串中的第一个格式说明不匹配。下一次调用scanf函
2011-02-11 11:58:00 532
原创 百练3727摘花生
前几天在百练看到这题,题意主要是输入一个二维数组,行和列不大于100,求从左上点到右下点经过的所有节点值之和的最大值,行走路线只能向下或向右。 由于有多组数据需要输入,我就用一个函数处理每组数组,函数参数为一个数组,和其行和列数。没想到,一开始就在函数声明上花了好些时间,int getmax(int,int,int * [100]),其实这个错误的,*应该用括号括起来,int getmax(int,int,int (*)[100]),前者表示参数为100指针数组,后者表示为参数为一个指
2011-02-11 10:44:00 636
原创 C笔记-求和
#include#define MAX 6intmain(void){unsignedint num[MAX],i,sum_num=0;for(i=0;i
2011-02-10 22:03:00 351
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人