杭电总结

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.0

如果要循环输入n个数,可用如下方法:

{

While(~scanf(“%d”,&n))

{

For(i=1;i<=n;i++)

Scanf(“%d”,&a);

}

}

1.1

或者:

While(~scanf(“%d”,&n))

{

While(n--)

}

Scanf(“%d”,&m);

}

}

2.0(1)

如果输出好几个数,则应在数于数之间添加空格,如:Printf(“%d %d %d”,a,b,c);

2.0(2)

或加一个判断:

For(i=1;i<=n;i++)

{

If(i=n)printf(“%d”,a[i]);

Else printf(“%d ”,a[i]);

}

2.0(3)

详见2010

2.0(4)

输出数组:

For(i=0;i

Printf(“%d ”,a[i]);

Printf(“%d\n”,a[z-1]);

2.0(5)

输出时要求两个数之间用空格,可用如下方法:Printf(“%d”,a[0]);

For(i=1;i

Scanf(“%d”,a[i]);

Printf(“\n”);

4.0

当输入多组数据并处理时,可减少变量语句的使用:While(m--)

{

While(n--)

{

Scanf(“%d”,&a);

If()…

}

}

5.0

求余新法(详见信息参考杭电21)

6.0

不要在for语句中定义类型

__int64不支持,可以用long long代替

7.0

递推常见公式:

(1)F(n)=(F(n-1)+1)*2(猴子吃桃)(2)F(n) = n(n+1)/2 +1;或F(1)=2;,F(n) = F(n-1)+n;(直线切圆)

(3)F(n) = 2 n^2 –n + 1(折线)

8.0

求阶乘位数:

概率论里有一个斯特林公式:

n!≈Sqrt((2*π*n)*(n/e)^n)

n很大,且精确度要求不高时可以一试。

π=3.1415926535897……

e=2.7182818283……9.0

比较大小,然后插入一部分数据

详见2025

10.0

控制输入行数,跳到下一行

While(~scanf(“%d\n”,&n))

11.0

差集定义:一般地,设A,B是两个集合,由所有属于A且不属于B的元素组成的集合,叫做集合A减集合B(或集合A与集合B之差),类似地,对于集合A. B,我们把集合{x/x∈A,且x¢B}叫做A与B的差集,记作A-B。

12.0

多边形求面积公式:

X=X1,Y=Y1;

for()

{

Scanf(“X2,Y2”)

SUM+=XI*Y2-Y1*X2;

X1=X2;Y1=Y2;

}

(SUM+=(X1*Y-X*Y1))/2;

13.0

简单输出的错误:

#include

main()

{

int z[60]={0,3,6,6},x,c;

while(~scanf("%d",&x))

{

for(c=4;c<=x;c++)

z[c]=z[c-1]+2*z[c-2];

printf("%d\n",z[x]);//如果是z[c]则不能输出这个却结果//

}

}

14.0

格式:__int64

输入/输出%I64d

15.0

错排公式为

(1.0)f(n)=(n-1)*(f(n-1)+f(n-2)).特别的

f(1)=0,f(2)=1

(2.0)M(n)=n!(1/2!-1/3!+…..+(-1)^n/n!)(附文档一)

16.0

错排于排列组合的结合问题:详见2049

17.0

将字符串转化成数字:

ato f():将字符串转换为双精度浮点型ato i():将字符串转换为整型值。

ato l():将字符串转换为长整型值strt od():将字符串转换为双精度浮点型值,并报告不能被转换的所有剩余数字。strt ol():将字符串转换为长整值,并报告不能被转换的所有剩余数字。strto ul():将字符串转换为无符号长整型值,并报告不能被转换的所有

剩余数字。

函数说明atof()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('\0')才结束转换,并将结果返回。参数nptr 字符串可包含正负号、小数点或E(e)来表示指数部分,如123.456或123e-2。

范例/* 将字符串a 与字符串b转换成数字后相加*/ #include

#include

main()

{

char *a=”-100.23”;

char *b=”200e-2”;

(1)float c;

(2)c=atof(a)+atof(b);

printf(“c=%.2f\n”,c);

System(“pause”);

}

执行c=-98.23

注:(1)改成int型(2)改成atoi就

相关文档
最新文档