- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机二级C语言经典公式
1、 累加: int i, sum=0;for(i=1; i=100; i++)?? sum+=i;printf(sum=%d\n, sum);
2、 累乘(阶乘):int i, s=1, n;scanf(%d, n);for(i=1; i=n; i++)?? s*=i;printf(s=%d\n, s);
3、整型常量的个位、十位、百位上数字的表示方法:现定义一个整形常量x,则个位:x%10; 十位:(x/10)%10; 百位:(x/10^2)%10;
4、 四舍五入(对一个输入的双精度数保留3位小数): double x;scanf(%lf, x);x*=1000;x+=0.5;x=(int)x;x/=1000;printf(x=%lf, x);
5、 变量值交换: (1)输入三个整数a、b、c, 然后把a的值给b, 把b的值给c, 把c的值给aint a, b, c, t;scanf(%d%d%d, a, b, c);printf(a=%d,b=%d,c=%d, a, b, c);t=a; a=c; c=b; b=t;printf(a=%d,b=%d,c=%d, a ,b, c);(2)地址值传递注意:下面两种情况均不能将主函数中的变量值对调?????? 1) void fun(int *a, int *b)????????????? {int *k;?????????????? k=a; a=b; b=k;?????????????? }?????? 理由简述:指针变量作为函数参数也要遵循单向的值传递方式,所以交换指针形参中的地址值不能改变对应的实参。???????? 2) void fun(int *a, int *b)?????????????? {int *k;?????????????? *p=*a; *a=*b; *b=*p;??????????????? }?????? 理由简述:指针k是无向指针,“*p=*a”等等语句会出现错误。正确的算法如下:void fun(int *a, int *b){int k;k=*a; *a=*b; *b=k;}
6、 输入三个数a、b、c,选出最大者和最小者:double a, b, c, max, min;scanf(“%lf%lf%lf”, a, b, c);max=a, min=b;if( ab) {max=b; min=a;}if(cmax) max=c;if(cmin) min=c;printf(max=%lf,min=%lf, max, min);
7、 图形
????????????? *?????????????? *** ????????? *****???????? *******????????? *****??????????? *** ????????????? *??int i, j;for(i=1; i=4; i++)??? {for(j=1; j=4-i; j++) putchar( );????? for(j=1; j=2*i-1; j++) putchar(*);?????? putchar(\n);??? }for(i=1; i=3; i++)??? {for(j=1; j=i; j++)?? putchar( );????? for(j=1;?? j=7-2*i; j++)?? putchar(*);???? putchar(\n);??? }putchar(\n);
8、 斐波那契数列:(1)给定项数n的算法int a=1, b=1, c, i;printf(%3d%3d, a, b);for(i=3; i=n; i++) ???? {c=a+b;????? printf(%3d, c);?????? a=b;?????? b=c;????? }(2)给定上界数m的算法int a=1, b=1, c;printf(%3d, a);do??? {c=a+b;????? a=b;???? printf(%3d, a);/*打印新的a,实际上就是打印新的c的前一项*/ ???? b=c;??? } while(cm);
9、 素数(将0~m之间为素数的元素依次存放在数组a[ ]中):int i, j, t, a[100], n=0;for(i=2; im; i++)??? {t=1;??? for(j=2; ji; j++)????? if(i%j= =0)???????? {t=0;?????????? break;??????????? }????? if
文档评论(0)