文章编号:1007—1423(2013)26—0063--O4 OOl:10.3969/j.issn.1007—1423.2013.26.017
非计算机专业学生 C语言编程易出的错误解析
张 俊
(武汉科技大学计算机科学与技术学院.武汉 430065)
■
摘 要 : 《c语言程序设计》对于非计算机专业 的学生来说,是一 门比较难学的课程 。c语言语法规
则较多,Visualc++系统不够严谨和完善 ,学生在调试程序过程 中,往往编译、连接都没有
错误 。但却得不 出正确结果或没有结果 ,对初学者编程 时易出的错误加 以归纳、分析 ,给 出
正确的语 句或 正确的程序
关键词 :C语言编程 ;VisualC++
0 引 言 正确的语句:scanf(”%d,%dI.,&a,&b);
scanf函数中不能使用换行符 “、n”
目前 .在许多高等院校 .计算机专业和非计算机专
(3)错误语句:charstr[1O];
业的学生都开设 《C程序设计》课程,C语言具有功能丰
seanf(”%s”,str[1o]);
富,表达能力强、使用灵活、应用面广、目标程序效率
用 scanf函数输入字符串数组.地址列表应是用数
高、可移植性好、能对硬件直接进行操作等优点。但相
组名.即字符串的首地址 系统会 自动分配连续的存贮
对于其他高级语言.C语言要难学一些。例如C语言的
单元.存人输入的字符串
数据类型较多 语法规则多、而且输入、输出语句 比较繁
正确语句 :charstr[1O];
琐.指针部分非常灵活,难以掌握等。非计算机专业C
scan~”%s”,str);
语言程序设计理论课和上机课时较少.VisualC++系统
或用 gets函数:charstr[1O];
不够严谨和完善 .学生在初学上机调试程序过程中,常
gets(str);
常找不出程序中的错误 .本文对学生易出现的错误加
2 标点符号错误
以归纳、分析 ,供初学者参考 。
下列是求 n!的错误程序段 :
1 输入语句的错误
t=1:
(1)错误语句 :scanf(”%d,%d”,a,b); for(i=O;i
正确语句 :scanf(”%d,%dII,&a,&b1; t=ti:
此语句本意是为 a.b两个整型变量输入数值 ,地