相关常用的算法还有判定回文,求阶乘,Fibanacci数列,任意进制转换,杨辉三角形计算等等。
字符串:
字符串其实就是一个数组(指针),在scanf的输入列中是不需要在前面加 “&”符号的,因为字符数组名本身即代表地址。值得注重的是字符串末尾的‘\0’,假如没有的话,字符串很有可能会不正常的打印。另外就是字符串 的定义和赋值问题了,本文作者有一次的比较综合的上机作业就是字符串打印老是乱码,上上下下找了一圈问题,最后发现是因为
| char *name; |
而不是
| char name[10]; |
前者没有说明指向哪儿,更没有确定大小,导致了乱码的错误,印象挺深刻的。
另外,字符串的赋值也是需要注重的,假如是用字符指针的话,既可以定义的时候赋初值,即
| char *a="Abcdefg"; |
也可以在赋值语句中赋值,即
| char *a; a="Abcdefg"; |
但假如是用字符数组的话,就只能在定义时整体赋初值,即char a[5]={"abcd"};而不能在赋值语句中整体赋值。
评论加载中…
![]() |