C与指针课后答案与编程练习(第一章)

1.7问题

1.空白规则很大程度影响程序的美观性,就如python强制要求缩进行一样,良好的缩进可以大大提高程序的可读性,是写一个程序必不可少的环节。所以说空白使用规则很重要,也很必要。
2.这样说可以将不同模块的程序分类放置,就和书的目录一样,需要时#include目录就行,然后需要的内容里面都有,尤其在大型程序时,将不同的函数分别变为模块,调用就用include,程序就会变得井井有条。
3.方便修改,方便查找,增加常量的可读性(但在C++中一般都使用const进行定义,C中也建议使用)
4."%d %s %g\n"
5.
    int quantity;
    int price;
    char department[10] = {0};
    scanf("%d %d %s",&quantity,&price,department);//注意输入字符串不要超过9
6.我们可以在可能超出范围的地方进行手动检查(自己编写程序),但是C语言忽略检查数组下标行为的是因为下标是通过指针来操作的。
7.会比实际需要复制更多的字符,但因为output_col在之前已经进行了更新,所以说第二个字符串复制到第一个字符串会复制到合适的位置,唯一需要注意的就是strcpy可能会复制更多的字符到字符串中,在空间不够的字符串中复制会导致内存泄漏,影响程序中其他的变量。
8、使用gets()会出现问题,因为gets不检查越界,当输入的字符比之前预设的多时,gets也会继续执行,但是程序可能会出现内存泄漏的问题,在很多编译器中已经禁止使用gets函数

在以下程序中,如果你输入字符超过5个,则会将多于的字符放入位置的内存中,导致出现内存问题。

#include<stdio.h> 
int main(  )  
{
char s[5];
printf ("input one line: "); 
gets(s);
printf ("%s\n",s); 
return 0;
}  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老潘的博客

请老潘吃块饼干!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值