c语言学习笔记

  1. if中别忘了==,而不是=。

  2. 写完程序别忘了检查前后大括号、小括号是否完全照应。

  3. 遇到几分之几的分数可以方程两边同时乘以一个数来消去分母。

  4. 写指针题时看准指针对应的是行还是列。
    例:int a[4][3];
    int *p=a[0]; 列指针。
    int (*ptr)[3]=a; 行指针。

  5. 考虑好哪些量会随着循环不断改变。哪些量不会,如果搞混,会出现难以察觉的错误。

  6. C语言中scanf只有在字符数组时不用加&,注意是字符串不是字符,也就是说%s后面可以直接scanf(“%s”,a),而%c后面不行。

  7. 定义i用于循环时常常定义在for( )之内,注意后面如果用到i,这样写是错误的,因为i只在局部有效。

  8. 注意strlen只适用于字符串数组,不能用于整形数组。

  9. strlen使用时注意不要跳过字符串数组的a[0],为了方便就从a[1]开始赋值,如果这样strlen会计算为0,从而出错。

  10. 注意对于字符串数组,在代码中通过把%d的数字通过“=”转换为字符串中的字符时,字符串识别的是ASCII码为%d对应的数字时那个的字符,而不是我们想要的原字符,所以这时有两个解决方案:
    第一,转化式中在%d数字后加一个字符‘0’。
    第二,输出时不用%c输出,用%d直接输出!
    例如

int b;
char a[100]={0};

 scanf("%c",&a[0]);

printf(“%c”,a[0]);

等价于

scanf("%d",&b);

a[0]=b+‘0’;

printf(“%c”,a[0]);

等价于

scanf("%d",&b);
a[0]=b;
printf(“%d”,a[0]);
  1. 定义时,长整型long int可以简化成long去写。
  2. codeblocks调试时遇到Debugger finished with status 0,这句话翻译为:调试器以状态0结束。
    原因可能是未设置断点或者保存程序的文件夹含有中文。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值