C语言程序设计教程习题答案总主编杨路明主审郭浩志
文件摘自CSDN习题1
1、算法描述主要是用两种基本方法:第一是自然语言描述,第二是使用专用工具进行算法描述
2、c语言程序的结构如下:
1、c语言程序由函数组成,每个程序必须具有一个main函数作为程序的主控函数。
2、"/*"与"*/"之间的内容构成c语言程序的注释部分。3、用预处理命令#include可以包含有关文件的信息。4、大小写字母在c语言中是有区别的。
5、除main函数和标准库函数以外,用户可以自己编写函数,程序一般由多个函数组成,这些函数制定实际所需要做的工作。例如:
voidmain({
inta,b,c,s;a=8;b=12;c=6;s=a+b*c;
printf("s=%d\n",s;}
3、c语言的特点:
1、c语言具有结构语言的特点,程序之间很容易实现段的共享;
2、c语言的主要结构成分为函数,函数可以在程序中被定义完成独立的任务,独立地编译成代码,以实现程序的模块化。
3、c语言运算符丰富,运算包含的范围很广;4、c语言数据类型丰富。
5、c语言允许直接访问物理地址,即可直接对硬件进行操作,实现汇编语言的大部分功能;
6、c语言语法限制不太严格,程序设计自由度大,这样是c语言能够减少对程序员的束缚;
7、用c语言编程,生成的目标代码质量高,程序执行效率高,可移植性好;4、合法标识符:AB12、leed_3、EF3_3、_762、PAS、XYZ43K2
不合法标识符:a*b2、8stu、D.K.Jon、if、ave#xy、#_DT5、C.D5、F2:将当前编辑器中文件存盘F10:调用主菜单
F4:程序运行到光标所在行
Ctrl+F9:当前编辑环境下,进行编译、连接且运行程序;Alt+F5:将窗口切换到DOS下,查看程序运行结果6、(1:
********************welcomeyouverygood
********************(2:
pleaseinputthreenumber;5,7,8maxnumberis:87、main
8、Userscreen、Alt+F5
9、标识符必须是字母或下划线开头,大小写字母含义不同。由数字、字母和下划线组成;
关键字是一种语言中规定具有特定含义的标识符。关键字不能作为变量或函数名来使用,用户只能根据系统的规定使用它们。
10、选择主菜单File项下拉子菜单中Save项或直接按F2键存盘。习题2
1、符合C语法规定的常数为:0x1e、"ab\n"、1.e52、(1:
错误如下:intx,y=5,z=5,aver;
x=7;
aver=(x+y+x/3;
结果如下:AVER=5(2:
错误如下:charc1='a',c2='b',c3='c';
printf("a=%db=\'%c\'\"end\"\n",a,b;
结果如下:a=3b='A'"end"
aabccabc
3、
4、(1:9,11,9,10(2:3,1,0,0(3:11,19,31,15、(1:0(2:0
(3:9.500000(4:90(5:10(6:10(7:65(8:4
(9:4.500000(10:1(11:0(12:20(13:06、(5
7、求x的绝对值
8、c>(max=a>b?a:b?c:max;9、B10、D
习题3
1、输入函数scanf的参数错误,应该为:scanf("%f",&k;2、|12341234|3、ff104、1,3,15、原字符串
左边加空格再加字符串本省,字符个数总和为5个6、scanf("%d,%d,%c,%c",&a1,&a2,&c1,&c2;7、printf("a+b=%d\n",a+b;printf("a-b=%d\n",a-b;printf("a*b=%d\n",a*b;printf("a/b=%d\n",a/b;
printf("(floata/b=%f\n",(floata/b;printf("a%b=%d\n",a%b;8、voidmain({
floatr;floats,c;
printf("pleaseinputthenumber:";scanf("%f",&r;if(r>=0
{
s=3.14*r*r;c=2*3.14*r;
printf("s=%f,c=%f\n",s,c;}else
printf("youinputnumberiserror!";
}
9、voidmain({
intn;
printf("pleaseinputthenumber:";scanf("%d",&n;
if(n>=100&&n<=999
printf("%d%d%d",n%10,(n/10%10,n/100;else
printf("youinputnumberiserror!";
}
10、voidmain({
inti,j,k;
scanf("%d,%d,%d",&i,&j,&k;
((i%2!=0?1:0+(j%2!=0?1:0+(k%2!=0?1:0==2?printf("YES\n":printf("NO\n";}
11、voidmain({
chara;