




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
输入函数留下的“垃圾”:例 int x; char ch; scanf(“%d”,&x); ch=getchar(); printf(“x=%d,ch=%dn”,x,ch);执行:123输出:x=123,ch=10例 int x; char ch; scanf(“%d”,&x); scanf(“%c”,&ch); printf(“x=%d,ch=%dn”,x,ch);执行:123输出:x=123,ch=10解决方法:(1)用getchar()清除(2)用函数fflush(stdin)清除全部剩余内容 (3) 用格式串中空格或“%*c”来“吃掉”例 int x; char ch; scanf(“%d”,&x); scanf(“ %c”,&ch);或 scanf(“%*c%c”,&ch);int main(int argc, char* argv) int i=10; printf(%d %d %d,i,i+,i+); return 0;TC3.0输出“12 11 10” VC6.0输出“10 10 10” -1,%u输出 4294967295 ?c+ : char a=127 %d输出127 char a=128 %d输出-128#include #define CUBE(x) (x *x *x)void main() int x=5,y; y=CUBE(+x); printf(%d,y);TC3.0输出512,VC输出392#include void main() int a=1,b; b=(+a)+(+a)+(+a); printf(%d %d ,a,b);TC3.0输出4 12,VC输出4 10#include void main() int a=2,b; b=(a+)+(a+)+(a+); printf(%d %d ,a,b);TC3.0输出5 6,VC输出5 6保留一个实数的2位小数,第3位实现四舍五入x=2.3563,需要操作:2.3563*100+0.5实现第3位的四舍五入;要保留2位小数,则取整后整除即可,即x=int(x*100+0.5);x/=100; 。交换2整型a,b值: a=a+b;b=a-b;a=a-b; (可移植性差)当用rand的结果转换为更有限的范围时,不要试图用取模运算。在使用rand时,只有返回的结果的位置在数轴上具有随机特性。当调用一个产生伪随机数的函数时,重要的是记住每次调用都会产生一个不同值。如果要保存一个特定值,必须把函数的结果保存在一个变量中。每个源程序末尾用 #undef 将宏解除。未初始化的const全局变量恒为 0 ; 未初始化的const局部变量不确定值当有符号数和无符号数同时出现在一个表达式中时,C 会隐含地将有符号 转换为无符号 ,然后计算。这是由于在C中,当在同一个表达式中使用不同类型的数据计算时,缺省的是将数值表示范围小的类型(“窄”的类型)转换为表示范围大的类型(“宽”的类型)。用malloc或new申请内存之后,立即检查指针指是否为NULL,防止为NULL。动态内存的申请与释放必须配对,防止内存泄露。用free或delete释放内存之后,立即将指针置为NULL,防止产生“野指针”。 exit(0) exit(1) 在stdlib.hgetch() (VC中在conio.h中 不回显)getche() (VC中在conio.h中 回显)getchar() (敲回车后送入缓冲区)#include stdio.hvoid main() double x,y; /*double换float 有不同结果*/ scanf(%f,&x); y=-1/(2*x); if(x!=0) if(x0) y=1/x; else y=0; printf(%f ,y); int a; while(scanf(%d,&a)=0) printf(fdfsafan); return 0;输入字符串 就死循环#include stdio.h#include math.hmain() float sum=0,tn=1; long n=1; /* n的初值该为0还是1 ? */ int sign=1; while(fabs(tn)1e-6) sum+=tn; /*累计求和*/ n+; /*开始准备计算下一项*/ sign*=-1; /*改变符号*/ tn=(double)sign/(2*n+1) ; /*计算下一项*/ sum*=4; printf(pi is %.8f,sum); /*计算 /4=1-1/3+1/5-1/7+1/9 的近似值*/#include stdio.h#include math.hmain( ) int a,x; long sum=0,n=1,tn ; scanf(%d%d,&a,&x); tn=a; while(n=a&ch= A&ch=0&ch=a & c=A & c=Z) c+=3; putchar(c); while(c!=n); /*输入一串字符 字母后移3位*/int aNN,n=N,low=0,hi,i,t,j;for(hi=n,t=1;t=n*n;low+,hi-)for(i=low;ihi;i+) alowi=t+;for(i=low+1;i=low;i-) an-low-1i=t+;for(i=hi-2;ilow;i-) ailow=t+;/螺旋矩阵void main()int a=10;int f(int n);printf(%d ,f(a);int f(int n)if(n=1) return 1;else return (n+f(n-1); /* return n?(n+f(n-1):0; */ main() char a1000; int i; for(i=0;i1000;i+) ai=-1-i; printf(%d ,strlen(a); /输出255void main()pchar p3,p4;typedef char* pc;pc p1,p2;printf(%d %d %d %d ,sizeof(p1),sizeof(p2),sizeof(p3),sizeof(p4); /4 4 4 1int i;char s8=1,2,3,4,5,6,7,8;printf(%d ,strlen(s); /15char c4=101,c5=116;printf(%c %cn,c4,c5); /输出 1 6#define BSC /#define BMC /*#define EMC */D),BSC my single-line commentE),BMC my multi-line comment EMCD)和 E)都错误,为什么呢?因为注释先于预处理指令被处理,当这两行被展开成/或/*/时,注释已处理完毕,此时再出现/或/*/自然错误.因此,试图用宏开始或结束一段注释是不行的。#define SQR(x) printf(The square of #x is %d.n, (x)*(x);再使用:SQR(8);则输出的是:The square of 8 is 64.TC: sizeof(a)2 VC: sizeof(a)1kbhit() 在执行时,检测是否有按键按下,有按下返回非0值,一般是1 没有按下返回0;是非阻塞函数 getch() 在执行时,检测按下什么键,如果不按键该函数不返回;是阻塞函数 getc() 原型 int getc(FILE *infile); 返回一个字符使得程序无法识别文件结束标记。字符编码一共只有256个,且一个数据文件中可能包含其中的任意值。因此没有一个值(至少没有char类型的值)可以用做文件结束标记。扩展定义,使得getc返回一个整数值,这样的实现可以返回一个合法字符数据以外的值作为文件结束标记。通常在stdio.h中这个值称为EOF,-1。 如果用字符型的变量存储getc的结果,程序就检测不到文件结束标记。我需要根据条件把一个复杂的表达式赋值给两个变量中的一个。可以用下边这样的代码吗? (condition) ? a : b) = complicated expression;不能。? : 操作符, 跟多数操作符一样, 生成一个值, 而不能被赋值。换言之, ? :不能生成一个 “左值”。如果你真的需要,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《综合实践活动课程指导》(五四制专版)六年级上册的主题5-神奇的中医说课稿
- 2025合同样本:股权转让程序模板
- 2025建筑施工安全合同范本
- 2025标准上海市商业店铺租赁合同模板
- 2025供应商合同模板甲供货物合同
- 客至教学设计-2023-2024学年高中语文选择性必修下册统编版(部编版)
- 五 视力健康与保护说课稿-2025-2026学年小学综合实践活动粤教版六年级下册-粤教版(2016版)
- 高中信息技术视频的加工之高中生活点滴说课稿 粤教版
- 2.1 植物细胞工程(第2课时 应用)(教学设计)高二生物同步高效课堂(人教版2019选择性必修3)
- 江苏事业单位笔试真题2025
- 糖尿病足报告
- 国有企业战略使命评价制度
- 吊车施工专项方案
- 肺栓塞患者护理查房课件
- 合规风险管理制度
- 病毒课件教学课件
- 9月30日烈士纪念日缅怀先烈功绩弘扬先烈精神课件
- 2024年华东师大版八年级数学上册同步练习题及答案
- 数字化印花工艺智能化
- 香雪制药资本结构优化分析
- 2024年高考作文备考之“有用无用”作文导写素材及范文
评论
0/150
提交评论