二级C语言选择易错题(六)
一,C语言没有字符串string类定义字符串一定要用字符数组char a【】 二,字符串比较是两个字符串从首字符开始比较阿克斯码值 strcmp(str1,str2),若str1=str2,则返回零;若str1str2,则返回正数。准确来说是比较第一个不同的字符的阿克斯码谁大 三,常见阿克斯码 空字符(回车)是32 \0字符是0 0是48 a是97 A是65
所以空串“\0”比 “回车”要小 四,指向字符串的指针
本题选A 设置/0是结束条件 五,scanf数据的输入格式和之前“ ”里面控制输入格式完全一致
补充scanf(“%5d”,地址 a)合法 scanf(“%1.4f”,a)不合法 不能指定输出实数宽度 六 ,数据库独立性分为物理独立性和逻辑独立性
七,指针数组的数组名是地址的地址 数组元素都是地址变量(二维数组数组名也是首元素地址的地址)
A 选项 数组名是地址常量不能进行赋值(常指针) B p【0】是一级地址变量 a是地址的地址没法赋值数据类型不同 C合法 两边数据类型都是一级地址 Da是地址的地址 地址a就是三级地址变量 而p【0】只是一级地址变量 七,函数形参可以传递给实参实参不能给形参 返回值必须用return
八,Null和0等价
九
重点分析本图的题
传数组名是地址传递 传&a【2】也是传地址所以可以利用函数改动实际参数数组a
十三,填空和改错
十四,补充易错点 int a【】; 这个代码是错的 因为计算机不知道该给数组分配多大空间 int a【】={1,2,3}这个就对了 因为根据后面可以决定前面