C实习第2版
C语言程序设计第2版课后习题答案(贾宗璞 许合利人民邮电-第2版)
C语言习题答案第1章1.选择题(1) C (2) B (3) A2.填空题(1)main (2) main (3) 有穷性、确定性、有零个或多个输入、有一个或多个输出、有效性(4) 顺序、分支和循环(5) 自顶向下,逐步细化、模块化设计、结构化编码第2章1.选择题12 345 6 7 890 1234 5ACCDA D C ABA BBDDB2、填空题(1) 数字、字母、下划线(2)0 (3) 4、8 (4) (a+b)*c/(a-b) (5) -60 (6)-16 (7)9 (8)6、4、2 (9)0 (10)10、6 (11)5.500000 (12)12、4 (13)0 (14)16 (15)6.63、编程题(1)编写一个程序求各种类型数据的存储长度。
#include <stdio.h>main(){printf("int:%d byte\n",sizeof(int));printf("short int:%d byte\n",sizeof(short int));printf("long int:%d byte\n",sizeof(long int));printf("float:%d byte\n",sizeof(float));printf("double:%d byte\n",sizeof(double));printf("long double:%d byte\n",sizeof(long double));printf("char:%d byte\n",sizeof(char));}(2)#include <stdio.h>#define RAT 1.60934main(){float k;printf("input the km:");scanf("%f",&k);printf("mile:%f\n",k/RAT);}第3章1.选择题12 345 67 890(1) ~(10):DDCDD DCDCC2.解析题(1) x=170,x=ㄩㄩㄩ170,x=ㄩㄩㄩ252,x=ㄩㄩㄩㄩaa,x=ㄩㄩㄩ170x=170,x=170ㄩㄩㄩ,x=ㄩㄩㄩ170,x=%6da=513.789185,a=ㄩㄩ513.79,a=513.78918457,a=513.78918457 (2) a=3ㄩb=7x=8.5ㄩy=71.82c1=Aㄩc2=a3.编程题(1)main(){int x,y;scanf("%d%d",&x,&y);printf("商数=%d,余数=%d",x/y,x%y);}(2)main(){double x,y,z,avg;scanf("%lf%lf%lf",&x,&y,&z);avg=(x+y+z)/3;printf("%.1f",avg);}第4章1.选择题(1)~(10)CCAAD CCABD2.填空题(1)①a>0&&b>0||a>0&&c>0||b>0&&c>0②a<b||a<c③a>5||-a>5④(a<=0)&&((int)a)!=a⑤(a%b)!=0(2)①!(x>0) ②1 ③!(x>=0&&x<=5)(3)3、2、2(4) ch>='A'&&ch<='Z' ch=ch-32(5) x<=10&&x>2 x<=2&&x>-1 y=-1 ;(6) a+b>c&&a+c>b&&b+c>a a==b&&a==c a==b||a==c||b==c(7) x<0 c=x/10 y!=-23.编程题(1)#include <stdio.h>main(){int x;printf("please input a number:");scanf("%d",&x);if(x%2==0) printf("x is a even number");else printf("x is a odd number");}(2)#include <stdio.h>main(){int x,y;printf("please input a number:");scanf("%d",&x);if(x>-5 && x<0) { y=x; printf("%d",y); }else if(x==0) { y=x-1; printf("%d",y); }else if(x>0 && x<10) { y=x+1; printf("%d",y); }else printf("the number is error");}(3)#include <stdio.h>main(){ int a,m;printf("please input a number:");scanf("%d",&a);switch(a/10){ case 0:case 1:case 2:m=1;break;case 3:m=2;break;case 4:m=3;break;case 5:m=4;break;default:m=5;break;}printf("%d",m);}(4)#include <stdio.h>main(){float price,tax;printf("please input the price of product:");scanf("%f",&price);if(price>=10000) tax=price*0.05;else if(price>=5000) tax=price*0.03;else if(price>=1000) tax=price*0.02;else tax=0;printf("%f",tax);}(5)#include <stdio.h>main(){float score;printf("please input the score of student:");scanf("%f",&score);if(score>=85) printf("VERY GOOD");else if(score>=60) printf("GOOD");else printf("BAD");}(6)#include <stdio.h>main (){int x,y,z;printf("input two number:");scanf("%d%d",&x,&y);if(x<10 || x>99 || y<10 || y>99)printf("input data error!\n");else{ z=(x/10)*1000+(y/10)*100+(x%10)*10+y%10;printf("%d\n",z);}}第5章1.选择题(1)d (2) c (3)a (4)d (5)a (6)d (7)d (8)b (9)d (10)b (11)c (12)a(13)d (14)d(15)c2.填空题(1) fahr celsius=5.0/9*(fahr-32) fahr+=step (2) 5、4、6 (3) 3*i-2 (4) y-- z*=x (5) 8ㄩ5ㄩ2 (6) j++ i%j==0 j>=i(或j==i) (7)sum<k sum==k j-2 (8) s=0 p=1 j<=i3.改错题(1) 第一处改正:For改为for第二处改正:for(k=1;k<=4;k++)或for(k=0;k<4;k++)第三处改正:ave=sum/4改为ave=sum/4.0(2) 第一处改正:j<=9第二处改正:m=100*i+10*j+k(3) 第一处改正:temp=1第二处改正:temp >=eps第三处改正:r*2(4) 第一处改正:&n第二处改正:== ==(5) 第一处改正:t=m/10改为t=m%10第二处改正:t=0改为t==0第三处改正:m=m%10改为m=/104.编程题(1) 分式累加和。
C语言程序设计(第2版)李学刚 拓展训练 (1)[2页]
单元3 拓展训练一、单项选择题1.表达式各运算量不能自动转换数据类型的下列选项是()。
A.char转换为intB.short转换为intC.unsigned char转换为unsigned intD.unsigned char转换为unsigned short2.定义int i;float a;double k;则下列表达式类型为double是().A.i*10+a+'k' B.i*10+a+(int)kC.i*10.0+a D.i*10+a+(float)k3.若x=2,y=3,则x&y的结果是()。
A.1 B.2 C.3 D.04.表达式0x13&0x17的值是是()。
A.0x17 B.1C.0x13 D.0x1f5.设有char x=3,y=6,z;z=x^y<<2;则z的二进制值是()。
A.00010100 B.00011000C.00011100 D.000110116.在位运算中,操作数每左移一位,其结果相当于是()。
A.操作数乘以2 B.操作数除以2C.操作数乘以4 D.操作数乘以47.设有定义语句:char c1=92,c2=92;则以下表达式中值为零的是()。
A.c1^c2 B.c1&c2C.~c2 D.c1|c28.设int b=2;表达式(b>>2)/(b>>1)的值是()。
A.4 B.2 C.0 D.89.整型变量x和y的值相等、且为非0值,则以下选项中,结果为零的表达式是()。
A.x || y B.x | y C.x & y D.x ^ y 10.设有int x=5;char z='a';则printf("%d\n",(x&1)&&(z<'z'));输出的结果是()。
A.0 B.1 C.2 D.311.在VC++6.0系统中,函数调用时实参的求值顺序是()。
C语言程序设计案例式教程(第2版)教学大纲
《C语言程序设计案例式教程(第2版)》课程教学大纲(课程英文名称)
课程编号:
学分:5学分学时:94 (其中:讲课60上机34时)
先修课程:计算机操作系统适用专业课程:计算机
一、课程的性质与目标
本课程使用案例驱动教学,几乎每个案例通过案例描述、知识需求、知识讲解、案例实现四个部分,不仅详细讲解了C语言的相关知识,而且通过有趣实用的案例加强对知识的理解和应用。
通过本书的学习,读者既可以深刻理解C语言理论知识,又能牢固掌握编程实践能力。
二.教学要求
开发环境:
1.Windows 7操作系统及以上Visual Studio 2019
三、课程的主要内容及基本要求
第一章初识C语言
本课程为考试课程,期末考试采用百分制的闭卷考试模式。
学生的考试成绩由平时成绩(30%)和期末考试(70%)组成,其中,平时成绩包括出勤(5%)、作业(5%)、实验和上机成绩(20%)。
六、选用教材和主要参考书
本大纲是根据黑马程序员编著的教材《C语言程序设计案例式教程(第2版)》所设计。
七、大纲说明
本课程的授课模式为:课堂授课+上机,其中,课堂主要采用多媒体的方式进行授课,并且会通过测试题阶段测试学生的掌握程度;上机主要是编写程序,要求学生动手完成指定的程序设计或验证。
撰写人:
执行时间:审定人:
批准人:
端IT教育品牌
黑马程序员
传智教育旗下高
第二章C语言基础知识
第三章运算符与表达式
第五章数组
第六章函数
第七章指针
第九章结构体
第十一章文件。
C语言程序设计(第二版)习题参考答案1
C语言法式设计习题参考谜底之迟辟智美创作习题 1一、判断题1.在计算机中,小数点和正负号都有专用部件来保管和暗示.2.二进制是由0和1两个数字组成的进制方式.3.二进制数的逻辑运算是按位进行的,位与位之间没有进位和借位的关系.4.在整数的二进制暗示方法中,0的原码、反码都有两种形式.5.有符号数有三种暗示法:原码、反码和补码.6.经常使用字符的ASCII码值从小到年夜的排列规律是:空格、阿拉伯数字、年夜写英文字母、小写英文字母.解:1.F2.T 3.T 4.T 5.T 6.T二、单选题1.在计算机中,最适合进行数值加减运算的数值编码是 .A. 原码B. 反码C. 补码D. 移码2.已知英文小写字母m的ASCII码为十进制数109,则英文小写字母y的ASCII码为十进制数 .A. 112B. 120C. 121D. 1223.关于ASCII码,在计算机中的暗示方法准确地描述是 .A. 使用8位二进制数,最右边一位为1B. 使用8位二进制数,最左边一位为1C. 使用8位二进制数,最右边一位为0D. 使用8位二进制数,最左边一位为04.设在机器字长4位,X=0111B,Y=1011B,则下列逻辑运算中,正确的是___________.A. X∧Y=1000B. X∨Y=1111C. X⊕Y=0011D. ¯Y=10005.下列叙述中正确的是().A.高级语言就是机器语言B.汇编语言法式、高级语言法式都是计算机法式,但只有机器语言法式才是计算机可以直接识别并执行的法式C.C语言因为具有汇编语言的一些特性,所以是汇编语言的一种D.C源法式经过编译、连接,若正确,执行后就能获得正确的运行结果6.用C语言编写的源法式经过编译后,若没有发生编译毛病,则系统将().A.生成可执行文件B.生成目标文件C.输出运行结果D.自动保管源文件7.下列叙述中不正确的是().A.main函数在C法式中必需有且只有一个B. C法式的执行从main函数开始,所以main函数必需放在法式最前面C. 函数可以带参数,也可以不带参数.D. 每个函数执行时,按函数体中语句的先后次第,依次执行每条语句解:1.C 2.C 3.D 4.B 5.B 6.B 7.B三、填空题1.(87.625)10=()2=()8=()162.(1001010111001.10111)2=()8=()16=()103.输入三个数,计算并输出三个数的和与三个数的乘积.法式如下:#include <stdio.h>void main(){inta,b,c,s,z;printf("Please input a b c:\n");s=a+b+c;printf("%d\n",s);}*4. 输入三角形三条边的边长,计算并输出三角形的面积.根据三条边的边长,计算三角形面积的公式如下:法式如下:#include <stdio.h>#include <math.h>void main(){double x,y,z,s,dime;scanf("%lf%lf%lf",&x,&y,&z);dime=sqrt(s*(s-x)*(s-y)*(s-z));}解:1.1010111.101 127.5 57.A2.11271.56 12B9.B8 4793.718753.scanf("%f%f%f",&a,&b,&c); z=a*b*c; printf("%f",z);4.s=(x+y+2)/2; printf("%f",dim);四、编程题1.仿照例1.1,编法式在屏幕上显示:*****************************MerryChristmas!HappyNewYear!*****************************解:#include <stdio.h>void main(){ printf("*****************************\n");printf(" Merry Christmas!\n");printf(" Happy New Year!\n");printf("*****************************\n");}2.仿照例1.2编程,输入一个整数,计算这个数的平方.解:#include<stdio.h>void main(){ int a,z;printf("请输入一个整数:\n");scanf("%d",&a);z=a*a;printf("%d*%d=%d\n",a,a,z);}*3.仿照例1.3编程,输入两个数后,输出其中较小值.解:#include<stdio.h>float min(float x, float y){ float m;if (x<y) m=x;else m=y;return m;}void main(){ float a,b,c,mindata;printf("请输入二个数:\n");scanf("%f %f",&a,&b);mindata=min(a,b);printf("较小数:%f\n",mindata);}*4.仿照例1.2编程,输入a、b后,输出一元一次方程ax+b=0的解.解:#include<stdio.h>void main(){ float a,b,x;printf("请输入a、b:\n");scanf("%f %f",&a,&b);x=-a/b;printf("x=%f\n",x);}*5.仿照例1.2编程,输入圆柱体的半径和高,计算并输出圆柱体的体积.解:#include <stdio.h>void main(){ float r,h,s,v;printf("Please input r and h:\n");scanf("%f %f",&r,&h);v=3.14*r*r*h;printf("V=%f\n",v);}习题2一、判断题1.任何变量都必需要界说其类型.2.C语言的double类型数据在其数值范围内可以暗示任何实数.3.C语言的任何类型数据在计算机内都是以二进制形式存储的.4.isdigit(‘5’)的结果为0.5.printf函数中格式符“%c”对应的参数只能是字符类型.6.按格式符“%d”输出float类型变量时,截断小数位取整后输出.7.在C语言法式中,ABC与abc是两个相同的变量.8.scanf函数中的格式符“%d”不能用于输入实型数据.9.格式符“%f”不能用于输入double类型数据.10.当格式符中指定宽度时,输出的信息完全取决于所指定的宽度.解:(1)T (2)F (3)T (4)F (5)F (6)F (7)F (8)T (9)T (10)F二、指出下列各项中哪些是C语言中的常量,并指出其类型10,150 007 –0x3d π 1e0 e1 o7o8‘x’ ‘x o’ 1.52e0.5 sin(3) 0xf16 ‘\a’‘\009’1.414E+22.54‘\\’ ‘a’+2 0x100h 0128 10L解:合法的C常量有:整型常量: 007 –0x3d0xf16 10L实型常量: 1e0 1.414E+2字符型常量:‘x’‘\a’‘\\’三、指出下列各项中哪些是C语言中的用户标识符x_1 X_2 High printf β 3DS i/je2 -e2 count Int number $23 next_sizeof IF sum_12_123# NO1: double for解:C的用户标识符有:x_1 X_2 High e2 count Int number next_ IF sum_12四、单项选择题1.C语言中,char型数据在内存中的存储形式是().A.原码 B.反码C.补码D.ASCII码2.若有界说语句“char c='\72';”则变量c().A.包括1个字符B.包括2个字符C.包括3个字符D.界说分歧法3.C语言中的基本数据类型包括().A.整型、实型、逻辑型B.整型、实型、字符型C.整型、逻辑型、字符型D.整型、实型、逻辑型、字符型4.设c1、c2为字符型变量,执行语句“c1=getchar();c2=getchar();”时,从键盘输入A↙,c1和c2的值分别为().A.都是‘A’B.c1是‘A’,c2未输入C.c1未输入,c2是‘A’D.c1是‘A’,c2是‘\n’5.a、b是整型变量,执行语句“scanf("a=%d,b=%d",&a,&b);”,使a和b的值分别为1和2,正确的输入是().A.1 2B.1,2C.a=1,b=2D.a=1 b=26.设c为字符型变量值为‘A’,a为整型变量值为97,执行语句“putchar(c);putchar(a);”后,输出结果为().A.AaB.A97C.A9D.aA7.已知字母A的ASCII码值为65,以下语句段的输出结果是().char c1='A',c2='Y'; printf("%d,%d\n",c1,c2);A.输出格式非法,输犯毛病信息B.65,90C.A,YD.65,898.若要使用输入语句“scanf("%4d%4d%10f",&i,&j,&x);”,为i输入-10,为j输入12,为x输入345.67,则正确的输入形式是().A.–1012345.67↙B.–1012345.67↙C.–10001200345.67↙D.–10,12,345.67↙9.能正确地界说符号常量的是().A.#define n=10B.#define n 10C.#define n 10; D.#DEFINE N 1010.在C语言中,int、char、short三种类型数据在内存中所占的字节数().A.由用户自己界说 B.均为2个字节 C.是任意的 D.由机器字长决定解:(1) D (2) A (3) B (4) D (5) C(6) A (7) D (8) B (9) B (10) D五、填空题1.char ch='$';float x=153.4523;语句“printf("%c%–8.2f\\n",ch,x);”的输出结果是 .解:$153.45 \n2.int i=123;float x=– 1234.56789;语句“printf("i=%5d x=%7.3f\n",i,x);”的输出结果是 .解:i= 123 x=-1234.5683.char c='a';int a=65;语句“putchar(c+1);putchar(a);”的输出结果是 .解:bA4.int a=98;语句“printf(“%d,%c,%o,%x”,a,a+1,a+2,a+3);”的输出结果是 .解:98,c,144,655.int k; float f;语句“scanf(“%3d%*4d%6f”,&k,&f);”执行时输入 12345678765.43↙则 k= ,f= .解:k=123 f=8765.46.使用pow()函数时,法式的开头必需写一条预处置命令: .解:#include <math.h>5.填空题.(1)int i=123,j=45;函数printf("%d,%d\n",i,j);的输出结果是.解:123,45(2)int i=123; float x=-45.678;语句printf("i=%5d x=%7.4f\n",i,x); 的输出结果是.解:i= 123 x=-45.6780(3)float alfa=60,pi=3习 题 3一、根据下列数学式,写出C 的算术表达式.解:-(a 2+b 2)×y 4的C 表达式:-(a*a+b*b)*pow(y,4)π++-x 12tan 102的C 表达式:(sqrt(2)+10*10)/(pow(tan(x),-1)+3.141593) 5.3|)sin(|x 的C 表达式:sqrt(pow (fabs (sin(x)),3.5))56e x -的C 表达式:pow(x,6)-exp(5)cd d c b a d c ab +-+++221的C 表达式:(1.0/2*a*b+c+d)/(a+2*b-(c+d)/c/d)二、依照要求,写出下列C 的表达式.1.写出int 类型变量x 为“奇数”的表达式.解:x%2==12.Int 类型变量x 、y 、z ,写出描述“x 或y 中有且仅有一个小于z ”的表达式.解:x<z&&y>=z||x>=z&&y<z3.将double 类型变量y 保管四位小数的表达式.解:(int)(y*10000+0.5)/10000.04.为变量s 赋值:取变量x 的符号,取变量y 的绝对值.解:s=(x>=0?1:-1)*(y>=0?y:-y)5.条件“-5≤x ≤3”所对应的C 逻辑表达式.解:-5<=x&&x<=36.a 、b 是字符变量,已知a 的值为年夜写字母、b 的值为小写字母,写出判断a 、b 是否为同一字母(不区分年夜小写)的逻辑表达式 解:a+32==b 或 b-a==32?1:07.int 类型变量a 、b 均为两位正整数,写出判断a 的个位数即是b 的十位数、且b的个位数即是a的十位数的逻辑表达式.解:a%10==b/10&&a/10==b%108.写出判断某个人是否是成年人(年龄年夜于21),且不是老年人(年龄年夜于65)的逻辑表达式.解:y>21&&y<=659.写出取变量a、b、c中最年夜值的条件表达式.解:(a>b?a:b)>c?(a>b?a:b):c10.若字符变量ch为小写字母,则将其转换为对应的年夜写字母.解:ch=ch>='a'&&ch<='z'?ch-32:ch三、单项选择题1.设int x=3,y=4,z=5;,下列表达式中值为0的是().A.'x'&&'y'B.x<=yC.x||y+z&&y–zD.!((x<y)&&!z||1)2.已知x=10,ch='A',y=0;,则表达式“x>=y&&ch<'B'&&!y”的值是().A.0B.1C.“假”D.“真”3.判断char型变量c为数字字符的正确表达式为().A.'0'<=c<='9'B.'0'<=c&&c<='9' C.c>='0'||c<='9'D.c>=0&&c<=94.下列运算符中,优先级最低的是().A.?:B.&&C.= =D.*=5.若有条件表达式“x?a++:b--”,则以下表达式中()等价于表达式x.A.x==0B.x!=0C.x==1D.x!=16.有界说int k=4,a=3,b=2,c=1;,表达式“k<a?k:c<b?c:a”的值是().A.4B.3C.2D.17.执行下列法式段后,变量a,b,c的值分别是().int x=10,y=9,a,b,c;a=(--x= =y++)?--x:++y;b=x++;c=y;A.a=9,b=9,c=9B.a=8,b=8,c=10C.a=9,b=10,c=9D.a=1,b=11,c=108.有界说int a=9;,语句“a+=a–=a+a;”执行后,变量的值是().A.18B.9C.–18D.–99.设x和y均为int型变量,则语句“x+=y;y=x–y;x–=y;”的功能是().A.把x和y按从小到年夜排列B.把x和y按从年夜到小排列C.无确定结果D.交换x和y中的值10.有界说double x=1,y;,表达式“y=x+3/2”的值是().A.1B.2C.2.0D.2.511.设有界说int x;double y;,则下列表达式中结果为整型的是().A.(int)y+xB.(int)x+yC.int(y+x)D.(double)x+y12.设有整型变量x,下列说法中,毛病的是().A.“5.0”不是表达式B.“x”是表达式C.“!x”是表达式D.“sqrt(x)”是表达式解:(1)D (2)B (3)B (4)D (5)B (6)D(7)B (8)C (9)D (10)C (11)A (12)A四、填空题.1.设float x=2.5,y=4.7; int a=7;,表达式x+a%3*(int)(x+y)%2/4 值为 .解:2.52.设int x=2,y=3;,执行语句“x*=x+y”后x的值为 .解:103.设int x=17,y=5;,执行语句“x%=x–y”后x的值为.解:54.设 int a=6,b=4,c=2;,表达式 !(a-b)+c-1&&b-c/2 的值为 .解:15.设 int a=2,b=4,x,y;,表达式!(x=a)||(y=b)&&!(2-3.5) 的值为 .解:06.判断变量a、b是否绝对值相等而符号相反的逻辑表达式为 .解:a==-b7.判断变量a、b中必有且只有一个为0的逻辑表达式为 .解:a*b==0&&a+b!=08.设int m=2,n=2,a=1,b=2,c=3;执行语句d=(m=a==b)&&(n=b>c);后,m和n的值分别为 .解:m为0,n为29.设int a=2;,表达式“a%2!=0”的值为.解:010.设char c='y';,表达式“c>='a'&&c<='z'|| c>='A'&&c<='Z'”的值为.解:111.写出与代数式 (x+2)e x+2对应的C表达式 .解:(x+2)*exp(x+2)12.设int a=2;执行语句a=3*5,a*4;后a的值为 .解:15五、写出下列法式的输出结果.1.#include <stdio.h>void main(){unsigned k,n;scanf("%u",&n); //输入数据为:69k=n%10*10+n/10;printf("n=%d k=%d\n",n,k);}解:n=69 k=962.#include <stdio.h>void main(){int x=2,y=3;x*=y+4;printf("%d,%d\n",x,y);x/=y=5;printf("%d,%d\n",x,y);x-=y%2;printf("%d,%d\n",x,y);}解:14,32,51,53.#include <stdio.h>void main(){int a, b;a=8;b=7;a=(a-- ==b++)? a%3 : a/3;printf("a=%d b=%d\n",a,b);}解:a=2 b=8六、法式填空题.1.以下法式输入三个整数值给a,b,c,法式把b中的值给a,把c 中的值给b,把a中的值给c,交换后输出a、b、c的值.例如输入1 2 3,输出a=2 b=3 c=1.#include <stdio.h>void main(){ int a,b,c,①;p rintf(“Enter a,b,c:”);scanf(“%d%d%d”,②);③; a=b; b=c; ④;printf(“a=%d b=%d c=%d\n”,a,b,c);}解:① t ② &a,&b,&c ③ t=a ④ c=t2.以下法式不借助任何变量把a、b中的值进行交换.#include <stdio.h>void main(){ int a,b;printf(“Input a,b:”);scanf(“%d%d”,①);a+=②; b=a-③; a-= ④;printf(“a=%d b=%d\n”,a,b);}解:① &a,&b ② b ③ b ④ b七、编程题.1.输入3个字符后,按各字符ASCII码从小到年夜的顺序输出这些字符.解:#include <stdio.h>void main(){ char c1,c2,c3,t,min,mid,max;c1=getchar(); c2=getchar(); c3=getchar();min=(t=c1<c2?c1:c2)<c3?t:c3;max=(t=c1>c2?c1:c2)>c3?t:c3;mid=c1+c2+c3-min-max;putchar(min);putchar(mid);putchar(max);}2.输入两点坐标(x1,y1)、(x2,y2),计算并输出两点间的距离.解:#include <stdio.h>#include <math.h>void main(){double x1,y1,x2,y2,d;printf(“请输入两点坐标 (x1,y1),(x2,y2)\n”);scanf(“(%lf,%lf),(%lf,%lf)”,&x1,&y1,&x2,&y2);d=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));printf(“两点间距离=%f\n”,d);}3.编写法式,计算球体积并输出它的值.要求输入半径值,计算结果保管三位小数.解:#include <stdio.h>#include <math.h>#define PI 3.1415926void main(){ double r,gv;printf(“请输入半径值:\n”);scanf(“%lf”,&r);gv=4.0/3*PI*pow(r,3);printf(“半径为%f的球的体积为:%.3f\n”,r,gv);}4.输入三角形的底和高,求三角形面积.解:#include <stdio.h>#define PI 3.14159void main(){double a,h,s;printf(“请输入三角形的底,高\n”);scanf(“%lf,%lf”,&a,&h);s=a*h/2;printf(“三角形面积=%f\n”,s);}5.编写法式,输入一个实数后输出该数的绝对值.解:#include <stdio.h>void main(){double x,y;printf(“请输入一个实数\n”);scanf(“%lf”,&x);y=x>=0?x:-x;printf(“|%g|=%g\n”,x,y);}6.输入梯形的上底、下底和高,求梯形面积.解:#include <stdio.h>void main(){double a,b,h,s;printf(“请输入梯形的上底,下底,高\n”);scanf(“%lf,%lf,%lf”,&a,&b,&h);s=(a+b)*h/2;printf(“梯形面积=%f\n”,s);}7. 输入矩形的边长,求矩形面积.解:#include <stdio.h>void main(){double a,b,s;printf(“请输入矩形的长,宽\n”);scanf(“%lf,%lf”,&a,&b);s=a*b;printf(“矩形面积=%f\n”,s);}8. 已知等差数列的第一项为a,公差为d,求前n项之和,a、d、n由键盘输入.解:#include <stdio.h>void main(){int a,d,n,sum;printf(“请输入等差数列的首项公差项数\n”);scanf(“%d%d%d”,&a,&d,&n);sum=a*n+n*(n-1)*d/2;printf(“ sum=%d\n”,sum);}9. 编写法式,将d天h小时m分钟换算成份钟,输入d、h、m,输出换算结果.解:#include <stdio.h>void main(){int d,h,m,t;printf(“请输入天小时分钟\n”);scanf(“%d%d%d”,&d,&h,&m);t=d*24*60+h*60+m;printf(“%d天%d小时%d分钟=%d分钟\n”,d,h,m,t);}10. 编写法式,求出给定半径r的圆以及内接正n边形的面积,输出计算结果.r和n的值由键盘输入.解:#include <stdio.h>#include <math.h>#define PI 3.14159void main(){double r,s1,s2;int n;printf(“Input r n\n”);scanf(“%lf%d”,&r,&n);s1=PI*r*r;s2=n/2.0*r*r*sin(2*PI/n);printf(“圆面积=%f,正内接%d边形面积=%f\n”,s1,s2);}习题4一、单项选择题1.下列语句将小写字母转换为年夜写字母,其中正确的是().A.if(ch>='a'&ch<='z')ch=ch-32;B.if(ch>='a'&&ch<='z')ch=ch-32;C.ch=(ch>='a'&&ch<='z')?ch-32:'';D.ch=(ch>'a'&&ch<'z')?ch-32:ch;2.下列各语句中,能够将变量u、s中最年夜值赋给变量t的是().A.if(u>s)t=u;t=s;B.t=s;if(u>s)t=u;C.if(u>s)t=s;else t=uD.t=u;if(u>s)t=s;3.假设变量x、k都已界说,下列语句片段中,无语法毛病的是().A.switch(x){case x>=90: putchar('A');case x<60: putchar('E');}B.switch(x) {case 1+2: k='A';defualt: k='E';case 2*4: k='B';}C.switch(x){case 2+x: k=x-2;case 3*x: k=x+3;default: k=0;}D.switch(x){case 3.5: k=0.5*x;case 7.8: k=8*x;default: k=0;}*4.与语句while(!s )中的条件等价的是().A.s==0B.s!=0C.s==1D.s=05.下列语句中,哪一个可以输出26个年夜写英文字母().A.for(a='A';a<='Z';printf("%c",++a));B.for(a='A';a<'Z';a++)printf("%c",a);C.for(a='A';a<='Z';printf("%c",a++));D.for(a='A';a<'Z';printf("%c",++a));6.判断下面的while循环体的执行次数().i=0;k=10;while( i=8 ) i=k––;A.8次B.10次C.2次D.无数次解:(1) B (2) B (3) B (4) A (5) C (6) D二、写出下列法式的输出结果1.#include <stdio.h>void main(){char x;。
c程序设计语言(第2版)
c程序设计语言(第2版)C程序设计语言(第2版)是一本经典的计算机编程教材,由著名的计算机科学家Brian W. Kernighan和Dennis M. Ritchie共同撰写。
这本书首次出版于1978年,第2版于1988年出版。
它通常被简称为K&R,是C语言编程的权威指南,对初学者和有经验的程序员都具有极高的参考价值。
书籍概述这本书全面介绍了C语言的语法、语义和编程技巧。
它不仅涵盖了C语言的基本元素,如变量、运算符、控制结构、函数和数组,还深入探讨了更高级的主题,包括指针、结构、联合、枚举、位操作和预处理器。
第一部分:基础第一部分主要介绍了C语言的基础知识。
它解释了C语言的基本数据类型和运算符,以及如何使用它们来执行基本的算术和逻辑运算。
此外,它还介绍了控制流语句,如if语句、switch语句、while循环和for循环,这些是任何编程语言中实现条件和循环逻辑的基础。
第二部分:函数第二部分专注于函数的定义和使用。
函数是C语言中实现代码重用和模块化的关键。
这部分详细讨论了函数的定义、声明、调用以及如何传递参数。
它还介绍了递归函数的概念,这是一种特殊的函数,它在执行过程中调用自身。
第三部分:指针第三部分深入探讨了指针的概念。
指针是C语言中非常强大的特性,允许程序员直接操作内存地址。
这部分解释了指针的基本概念,包括如何声明指针、指针的算术运算以及指针与数组的关系。
此外,它还介绍了指针在函数参数传递中的应用,以及如何使用指针实现动态内存分配。
第四部分:结构、联合和枚举第四部分介绍了C语言中的复合数据类型,包括结构、联合和枚举。
结构允许将不同类型的数据组合成一个单一的数据类型,联合允许在同一内存位置存储不同的数据类型,而枚举提供了一种定义命名常量的方法。
这部分还讨论了如何使用这些复合类型来创建复杂的数据结构。
第五部分:预处理器和宏第五部分介绍了C语言的预处理器和宏。
预处理器提供了一种在编译之前处理源代码的方法,包括文件包含、条件编译和宏定义。
c程序设计第二版完整答案
第一章C++基础知识习题
1.1判断下列标识符的合法性。
sin book5arry _name Example2.1 main
int array[5]={1,2,3,4,5}; char s[]="Hello";
答:"China"文字常量
constint n=10;常变量
int m=5;变量
'a'文字常量
char ch='a'变量
int array[5]={1,2,3,4,5};变量
char s[]="Hello";变量
1.4将下列算式或叙述用C++表达式描述。
}
result=1;
for(i=2;i<=n;i++){
jch*=i; //jch是i的阶乘,注意n!=n*(n-1)!这样可少一层循环
result+=jch;
}
cout<<result<<endl;
return 0;
}
2.8
#include <iostream>
using namespace std;
}
m-=3;
}
解答:注意continue语句的使用
初值
m=0
k=1
第1次循环后
m=5
k=2
第2次循环后
m=2
k=3
第3次循环后
C语言程序设计(第二版)答案
参考答案习题二(P33)一.单选题1.C2.B3.D4.C5.A6.D7.D8.B9.B 10.D 11.D 12.C 13.C . 15. A 14题最后一句应为printf("%f\n",d*y);结果为2.2二.填空题1. 182. int float double3. 10 114. 八十六十5. %三.阅读程序题1.10,10,9,102.j=1,i=2k=3,i=3j=3,i=2k=1,i=1习题三(P52)一.单选题1.D2.C3.D4.B5.A6.B7.C8.A9.C 10.B 11. -1,37777777777,4294967295 二.填空题5. L6. -1三.阅读程序题1. 6 6 6.00 6.002. x=127,x= 127,x=177,x=7fY=123.4567 , y= 123.46 , y=123.456703. 2,14. 12345. 4,36. -6,-6四.程序设计题1.#include "stdio.h"#include "math.h"main(){float a,b,c,d,x1,x2;a=2;b=-3;c=-5;d=b*b-4*a*c;x1=(-b+sqrt(d))/(2*a);x2=(-b-sqrt(d))/(2*a);printf("x1=%.2f,x2=%.2f\n",x1,x2);}2.#include <stdio.h>main(){ float a,v,s;scanf("%f",&a);v=a*a*a;s=6*a*a;printf("v=%.2f,s=%.2f\n",v,s);}3.#include <stdio.h>main(){ int a,b,c,t;scanf("%d%d%d",&a,&b,&c);printf("a=%d,b=%d,c=%d\n",a,b,c);t=c;c=b;b=a;a=t;printf("a=%d,b=%d,c=%d\n",a,b,c);}4.#include <stdio.h>main(){ char s1,s2;s1=getchar();s2=s1-32;printf("%c\n",s2);}习题四(P70)一.单选题1.C2.D3.D4.B5.A6.D7.D8.B9.C 10.A 11.B 12.D 13.passwarnerror .14.C 15. C 16.B 17. B 18. C二.填空题1. 非0 02. k==03. n%7==0 && n%8==0 else三.阅读程序题1. a=1,b=02. c=1四.程序设计题1.#include <stdio.h>main(){ int a,b;char c;printf("INPUT A+(-*/)B\n");scanf("%d%c%d",&a,&c,&b);switch(c){case'+':printf("%d+%d=%d\n",a,b,a+b);break;case'-':printf("%d-%d=%d\n",a,b,a-b);break;case'*':printf("%d*%d=%d\n",a,b,a*b);break;case'/':printf("%d/%d=%d\n",a,b,a/b);break;default:printf("INPUT ERROR!");}}2.#include <stdio.h>main(){ float x,y;scanf("%f",&x);if(x==0||x==2)y=0;else if(x>0) y=(x+1)/(x-2);else y=(x-1)/(x-2);printf("y=%f\n",y);}3.#include <stdio.h>main(){ int g;printf("请输入学生成绩:");scanf("%d",&g);printf("g=%d:",g);switch(g/10){case 10:printf("A\n");break;case 9:printf("B\n");break;case 8:printf("C\n");break;case 7:printf("D\n");break;case 6:printf("E\n");break;default:printf("F\n");}}4.#include <stdio.h>main(){ int x,n=0;scanf("%d",&x);if(x<=0||x>=10000)printf("Data Error!\n");else{if(x<10)n=1;else if(x<100)n=2;else if(x<1000)n=3;else n=4;}printf("n=%d\n",n);}习题五(P87)一.单选题1.B2.D3.C4.C5.B6.C7.D8.C9.A 10.D 11.B 12.B 13.B 14.D 15. C 二.填空题1. for语句while语句do-while语句2. a=14,y=263. k=14,n= -14. 395. s=196. 222227. 108. 79. 810. 5,5三.改错题应改为for(i=0;i<5;i++)j++;应改为int j=0;while(j<10){j++;i=j;} 注while(j<10)后不应有分号应改为while(j<10); 注while(j<10)后分号不能少s*=i;i++;应改为{s*=i;i++;}continue 应改为break四.程序设计题1.#include <stdio.h>main(){ int i,j,s=0;for(i=1,j=1;i<=100;i++,j=j*(-1))s=s+i*j;printf("s=%d\n",s);}1.(另一做法)#include<stdio.h>main(){int i,s;for(i=1,s=0;i<=100;i++)if(i%2==0)s=s-i;else s=s+i;printf ("%d\n",s);}2.#include <stdio.h>main(){ int i,j,s1=0,s2=0;for(i=0;i<10;i++){scanf("%d",&j);if(j>0)s1=s1+j;else s2=s2+j;}printf("s1=%d,s2=%d\n",s1,s2);}3.#include<stdio.h>main(){int i,s;for(i=6,s=0;i<=96;i=i+1)if(i%10==6||i/10==6)s=s+i;printf ("%d\n",s);}4.#include<stdio.h>main(){int i,a,b,c;for(i=100;i<=999;i++){a=(i%10);b=(i/10%10);c=(i/100);if(i==a*a*a+b*b*b+c*c*c)printf ("%d\n",i);}}5.#include <stdio.h>main( ){int i,j,k=0;for (i=1;i<=4;i++){for (j=1;j<=i;j++){k++;printf("%d",k%10);}printf("\n");}}6.#include <stdio.h>main( ){int i,j,k=0;for (i=-3;i<=3;i++){if(i<0)k=-i;else k=i;for(j=1;j<=k;j++)printf(" ");for(j=1;j<=7-2*k;j++)printf("*");printf("\n");}}习题六(P111)一.单选题1.D2.B3.C4.C5.C6.D7.A8.B二.填空题1. 20 0 192. 数组名3. 越界4. 65. j==k a[j][k]=1; a[j][k]=0;三.阅读程序题1. 6 5 43 2 12.aaabbbccc ddd3.2,2,1四.程序设计题1.#include<stdio.h>main(){ int a[4][4]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}; int i,j,s=0;for(i=0;i<4;i++)for(j=0;j<4;j++)if(i==j||i+j==3)s+=a[i][j];printf("%d",s);}2.#include <stdio.h>{ char a[80];int i,j=5; /*假设删除位置为5*/gets(a);for(i=j-1;a[i]!='\0';i++)a[i]=a[i+1];a[i]='\0';puts(a);}3.#include <stdio.h>#include <string.h>main(){ char a[80];int i,j=5; /*假设插入位置为5*/char s='t'; /*假设插入字符为t*/gets(a);for(i=strlen(a);i>j;i--)a[i+1]=a[i];a[j]='t';puts(a);}4.#include<stdio.h>main(){ int a[3][5]={1,3,5,7,9,2,4,6,8,10,3,5,8,7,6}; int i,j,s1[3]={0},s2[5]={0};for(i=0;i<3;i++)for(j=0;j<5;j++)s1[i]+=a[i][ j];for(i=0;i<5;i++)for(j=0;j<3;j++)s2[i]+=a[ j][i];for(i=0;i<3;i++){for(j=0;j<5;j++)printf("%6d",a[i][j]);printf (" |%6d\n",s1[i]);}for(i=0;i<33;i++) printf("-");printf("\n");for(i=0;i<5;i++) printf("%6d",s2[i]);printf("\n");}5.#include<stdio.h>{ char s[3][80];int a=0,b=0,c=0,d=0,e=0,i,j;for(i=0;i<3;i++) gets(s[i]);for(i=0;i<3;i++)for(j=0;s[i][j]!='\0';j++)if(s[i][j]>='A'&&s[i][j]<='Z')a++;else if(s[i][j]>='a'&&s[i][j]<='z')b++;else if(s[i][j]>='0'&&s[i][j]<='9')c++;else if(s[i][j]==32)d++;else e++;printf("%3d%3d%3d%3d%3d",a,b,c,d,e);}习题七(P145)一.单选题1.A2.B3.C4.A5.C6.D7.C8.B9.B 10.C 11.D 二.填空题1. 该函数内局部2. 整型3. k<=breturn y;4. x[i]return (ave);fun(a,20)5. 1;add(n-1);add(n);6. n*f(n-1)0;f(i)三.阅读程序,写出运行结果1.10,20,302.643.84. hlo5. sum=55四.程序设计题1.#include <stdio.h>main(){float add(float, float), sub(float, float);float aver(float, float),a,b;scanf("%f,%f",&a,&b);printf("add=%f, sub=%f\n ", add(a,b), sub(a,b)); printf("aver =%f", aver(a,b));}float add(float x, float y) {return(x+y);}float sub(float x, float y) {return(x-y);}float aver(float x, float y) {return((x+y)/2);} 2.#include<stdio.h>main(){ int a,b,c,abmax(int,int);scanf("%d%d%d",&a,&b,&c);printf("max=%d\n",abmax(abmax(a,b),c)); }int abmax(int a,int b){if(a>b)return a;else return b;}3.#include <stdio.h>main(){float x,fun(float, int);int n;scanf("%f%d",&x,&n);printf("%f\n", fun(x,n));}float fun(float x, int n){float y;if(n==0)y=1;else y=x*fun(x,n-1);return y;}4.#include <stdio.h>main(){long f(int);int n,k;scanf("%d",&n);for(k=1;k<=n;k++)printf("%ld,",f(k));printf("\n");}long f(int n){long y;if(n<=2)y=1;else y=f(n-1)+f(n-2); return y;}5.#include <stdio.h>#include <string.h> main(){char a[50];int n;void fun(char x[ ],int n); gets(a);n=strlen(a); fun(a,n);puts(a);}void fun(char a[ ],int n) {int k,s;for(k=0;k<n/2;k++) {s=a[k];a[k]=a[n-k-1];a[n-k-1]=s;}}5. (另一做法)#include <stdio.h>#include <string.h> main(){char a[50];int n;void fun(char x[ ],int n); gets(a);n=strlen(a); fun(a,n);puts(a);}void fun(char a[ ],int n) {int k;char b[50];for(k=0;k<n;k++)b[n-1-k]=a[k];b[k]=a[k];strcpy(a,b);}6.#include <stdio.h>#define KK 100main(){char a[KK];long sjz(char a[]);int i=0,f1=0;printf("input a data:");gets(a);for(i=0;a[i]!='\0';i++){if(a[i]>='0'&&a[i]<='9'||a[i]>='A'&&a[i]<='F'||a[i]>='a'&&a[i]<='f') continue;else {f1=1;break;}}a[i]='\0';if(f1==1)printf("Data Error!\n");else printf("result is :%d\n",sjz(a));}long sjz(char a[]){long n=0,i;;for(i=0;a[i]!='\0';i++){if(a[i]>='0'&&a[i]<='9')n=n*16+a[i]-'0';if(a[i]>='A'&&a[i]<='F')n=n*16+a[i]-'A'+10;if(a[i]>='a'&&a[i]<='f')n=n*16+a[i]-'a'+10;}return n;}6.(另一做法)#include <stdio.h>#define KK 100main(){char str[KK],c;long sjz(char a[]);int i=0,f1=0;printf("input a data:");while((c=getchar())!='\n'&&i<KK){if(c>='0'&&c<='9'||c>='A'&&c<='F'||c>='a'&&c<='f')str[i++]=c;else f1=1;}str[i]='\0';if(f1==1)printf("Data Error!\n");else printf("result is :%d\n",sjz(str));}long sjz(char a[]){long n=0,i;;for(i=0;a[i]!='\0';i++){if(a[i]>='0'&&a[i]<='9')n=n*16+a[i]-'0';if(a[i]>='A'&&a[i]<='F')n=n*16+a[i]-'A'+10;if(a[i]>='a'&&a[i]<='f')n=n*16+a[i]-'a'+10;}return n;}习题八(P181) (注:无答案的题不在本课程讲授范围内)一.单选题1.D2.A3.C4.D5.C6.B7.C8.C9.C 13.D 14.B 15.A 16.C 17.A 二.填空题1. 指向取地址2. 2 +23. 286. *(p+5)7. ABCD A三.阅读程序题1.102.103.04. 3,65. 1 2 3 4四.程序填空题1.a,b,c或者&x,&y,&z max=*b或者max=y max=*c或者max=z2. ++ =*q ++ ++4. int *a,int *b b[j]=a[i] b[i++]5. *str+=3 *str>’z’&&*str<’a’||*str>’z’ a6. else 0 t[2*j+1]五.程序设计题1.#include <stdio.h>main(){int a[10],*p,*q,t;p=a;for(q=a;q<a+10;q++)scanf("%d",q);for(q=a;q<a+10;q++)printf("%5d",*q);printf("\n");q--;for(;p<q;p++,q--){t=*p;*p=*q;*q=t;}for(p=a;p<a+10;p++)printf("%5d",*p);printf("\n");}2.#include <stdio.h>#include <string.h>void main( ){ char a[50],*p1,*p2,t,n;gets(a);n=strlen(a);p1=a; p2=a+n-1;for(; p1<p2; p1++, p2--){t=*p1; *p1=*p2; *p2=t;}puts(a);}另一做法#include <stdio.h>main(){char str[20],*p=str;gets(str);while(*p)p++;p--;while(p>=str){printf("%c",*p);p--;}printf("\n");}3.#include <stdio.h>main(){int a[10],*p,*max,*min,t;for(p=a;p<a+10;p++)scanf("%d",p); for(p=a;p<a+10;p++)printf("%5d",*p); printf("\n");max=min=a;for(p=a+1;p<a+10;p++){if(*p>*max)max=p;if(*p<*min)min=p;}t=a[0];a[0]=*min;*min=t;t=a[9];a[9]=*max;*max=t;for(p=a;p<a+10;p++)printf("%5d",*p); printf("\n");}5.#include <stdio.h>int length(char *s){int n=0;while(*s){n++;s++;}return n;}main(){char str[20];int n;gets(str);n=length(str);printf("The string length is %d\n",n);}6.#include <stdio.h>main(){char str[81],*p=str,*q,t;gets(str);printf("The origenal string:\n");puts(str);for(p=str;*(p+1);p++)for(q=p+1;*q;q++)if(*q<*p){t=*p;*p=*q;*q=t;}printf("The result string:\n");puts(str);}习题九(P222) (注:无答案的题不在本课程讲授范围内)一.单选题1.D2.A3.B4.D 8.B 9.B 10.C二.填空题1. 结构体成员结构体指针指向2. 343. 224.ex三.阅读程序题1.92.10,x3.134. 46 40 415. 06. 3839。
c语言程序设计第二版呼克佑主编pdf
c语言程序设计第二版呼克佑主编pdf 标题:《C语言程序设计第二版呼克佑主编PDF》引言概述:《C语言程序设计第二版》是由呼克佑主编的一本经典的C语言教材,它对C 语言的学习和应用提供了全面的指导。
本文将从六个大点来详细阐述这本教材的内容和特点。
正文内容:1. C语言基础知识1.1 数据类型:介绍了C语言中的基本数据类型,如整型、浮点型、字符型等,并讲解了它们的用途和特点。
1.2 变量和常量:详细解释了C语言中变量和常量的概念,以及它们的声明和使用方法。
1.3 运算符:介绍了C语言中常用的运算符,包括算术运算符、关系运算符、逻辑运算符等,并给出了示例说明。
1.4 控制流程:讲解了C语言中的条件语句(if-else语句)和循环语句(for循环、while循环),以及它们的应用场景。
1.5 函数:详细介绍了C语言中的函数的定义、调用和返回值,以及函数的参数传递方式。
2. 数组和指针2.1 数组:讲解了C语言中数组的概念和用法,包括一维数组和多维数组,并给出了示例说明。
2.2 指针:详细解释了C语言中指针的概念和用法,包括指针的声明、指针的运算和指针与数组的关系。
2.3 动态内存分配:介绍了C语言中动态内存分配的方法,包括malloc()和free()函数的使用。
3. 结构体和共用体3.1 结构体:讲解了C语言中结构体的概念和用法,包括结构体的定义、结构体的成员和结构体的嵌套。
3.2 共用体:详细解释了C语言中共用体的概念和用法,包括共用体的定义、共用体的成员和共用体的应用场景。
4. 文件操作4.1 文件的打开和关闭:介绍了C语言中文件的打开和关闭操作,包括fopen()和fclose()函数的使用。
4.2 文件的读写:详细解释了C语言中文件的读取和写入操作,包括fscanf()、fprintf()等函数的使用。
5. 预处理器和宏定义5.1 预处理器的概念:讲解了C语言中预处理器的作用和使用方法,包括#include指令、#define指令等。
C 语言程序设计案例教程(第 2 版)_C语言程序设计案例教程(第2版)_[共8页]
普通高等教育“十一五”国家级规划教材
21世纪高等学校计算机规划教材
C语言程序设计案例教程
(第2版)
廖湖声叶乃文周珺编著
人民邮电出版社
北京
内容提要
本书试图从解决实际问题的角度出发,通过大量的典型实例,强化算法设计的基本方法,并由此阐述C 语言为实现算法而提供的各种技术支持,即沿着由问题带出算法,由算法带出程序设计语言的思路讲述C 语言程序设计中的各个知识点。
全书内容分为两部分:第一部分包括第1章至第6章,主要阐述C语言程序设计的基础知识及计算机算法的初步内容;第二部分包括第7章至第9章,主要列举一些综合性较强的实例,讲述一些与实践环节有关的内容。
为了便于考查学习效果,本书在主要章的后面都给出大量的习题和一套自测题。
这些题目基本上覆盖了各章中讲述的大部分知识点。
在主要章的后面提供两道涉及本章知识内容的上机练习题目,并在第9章给出具有一定综合效果的实践性题目。
本书为教师提供配套的电子教案及书中实例的源代码,可从人民邮电出版社的教学服务与资源网()上直接下载。
本书可作为各类高等院校计算机专业及理工科类非计算机专业的学生学习C语言程序设计的教材,也可作为有关工程技术人员和计算机爱好者学习C语言程序设计的参考书。
c程序设计第二版谭浩强课后答案
c程序设计第二版谭浩强课后答案C程序设计第二版是谭浩强教授编写的一本广泛使用的计算机程序设计教材,它以C语言为基础,深入浅出地介绍了程序设计的基本概念、语法规则和编程技巧。
这本书的课后习题对于加深理解C语言的知识点非常有帮助。
以下是部分课后习题的答案,供参考:第一章程序设计和C语言概述1. 问题一:简述程序设计的基本步骤。
- 答案:程序设计的基本步骤包括需求分析、设计、编码、测试和维护。
2. 问题二:C语言的主要特点是什么?- 答案:C语言的主要特点包括简洁高效、结构化、可移植性、丰富的运算符、灵活的数据类型和内存管理能力。
第二章 C语言程序的结构1. 问题一:C语言程序的基本结构是什么?- 答案:C语言程序的基本结构包括预处理指令、函数定义和主函数。
2. 问题二:什么是函数?C语言中函数的定义规则是什么?- 答案:函数是一段具有特定功能的代码块,可以被重复调用。
C 语言中函数的定义规则包括返回类型、函数名和参数列表。
第三章数据类型、运算符和表达式1. 问题一:C语言中的基本数据类型有哪些?- 答案:C语言中的基本数据类型包括整型(int)、字符型(char)、浮点型(float和double)。
2. 问题二:算术运算符有哪些?它们的优先级是怎样的?- 答案:算术运算符包括加(+)、减(-)、乘(*)、除(/)和模(%)。
它们的优先级从高到低依次是乘除、模、加减。
第四章控制语句1. 问题一:C语言中的条件语句有哪些?- 答案:C语言中的条件语句包括if语句、if...else语句和switch语句。
2. 问题二:循环语句有哪些?它们的基本结构是什么?- 答案:C语言中的循环语句包括while循环、do...while循环和for循环。
它们的基本结构是初始化、条件判断和迭代。
第五章数组1. 问题一:什么是数组?数组的声明方式有哪些?- 答案:数组是相同数据类型元素的集合。
数组的声明方式包括在函数内部声明和全局声明。
C语言程序设计实例教程第2版习题答案作者李红第2章C语言基础知识.doc
(B) a11b (C)
(D
D
a&&b (D)!(a=0)&&
(b!二0)
(D)0
(B
)o
int x=0245;
printf("%d",・・x);
getch()
}
(A) 244(B) 164(C) 245(D) 247
20.执行下列程序段吋输出结果是(D)。
#include <stdio.h>
(D) d=9+e++=d+9
A )o
(B) (x>=y) and (y>=z)
(D) (x>=y)&(y>=z)
11.在C语言中,若定义x和y为double类型,则表达式x=l,y=x+3/2的值是(C)。
(A)1(B)2(C) 2.0(D) 2.5
12.设a=12,则表达式a+=a-=a*=a的值是(C)。
main()
{
int x=6,y;
y=2+(x+=x++,x+8,++x);
printf(“%d〃,y);
getch();
}
(A) 13(B) 14(C) 15(D) 16
二.填空题
1.C语言的基本数据类型分为(
2.C语言的标识符只能由( 组成,而且第一个字符必须为(
3.C语言中,用关键字(int精度实型变量,用关键字(char
11.设
1x和y中有一个小于z(
2y是偶数(y%2=0
-2
1
b%4*(int)(x + y)%3/5的值为(
C语言程序设计(第2版)-- 课后题答案
《C语言程序设计能力教程(第二版)》课后作业及实训题参考答案第1章进入C语言程序世界二、1. I love China!printf("we are students.\n")2. 6项目实训题参考答案1.编写一个C程序,输出以下信息:* * * * * * * * * * * * * * * * * * * *I am a student!* * * * * * * * * * * * * * * * * * * *main(){ printf("********************\n");printf(" I am a student!\n ");printf("********************\n");}2.已知立方体的长、宽、高分别是10cm、20cm、15cm,编写程序,求立方体体积。
解:main(){int a,b,c,v;a=10;b=20;c=15;v=a*b*c;printf("v=%d",v);}本程序运行结果为:v=3000第2章编制C程序的基础知识一选择题C B A B A C C二操作题,2,-8,23.000000,2.500000,-8.0000002. ABC DEFGHwhy is 21+35 equal 523.3 14 32 31 24. aa bb cc abcA N项目实训题1.定义一个符号常量M为5和一个变量n值为2,把它们的乘积输出。
#define M 5main(){ int n,c;n=2; c=M*n;printf("%d\n",c); }2.编程求下面算术表达式的值。
(1)x+a%3*(int)(x+y)%2/4,设x=2.5,a=7,y=4.7;(2)(float)(a+b)/2+(int)x%(int)y,设a=2,b=3,x=3.5,y=2.5。
c程序设计(第2版)谭浩强
c程序设计(第2版)谭浩强C程序设计(第2版)是谭浩强教授编写的一本C语言程序设计教材,它以通俗易懂的语言和丰富的实例,为初学者提供了一个学习C语言的良好平台。
本书适合作为高等院校计算机专业或相关专业的教材,同时也适合自学者使用。
第一章:C语言概述本章主要介绍了C语言的发展历程、特点和应用领域。
C语言以其高效性、灵活性和强大的功能,在操作系统、嵌入式系统、高性能计算等领域有着广泛的应用。
谭浩强教授通过对比C语言与其他编程语言的特点,帮助读者建立对C语言的基本认识。
第二章:C语言程序的构成在本章中,作者详细解释了C语言程序的基本结构,包括预处理指令、函数、变量声明和语句等。
通过实例演示了如何编写一个简单的C程序,并介绍了编译和链接的过程。
第三章:数据类型、运算符和表达式本章深入探讨了C语言中的数据类型,包括整型、浮点型、字符型等,以及它们在内存中的存储方式。
同时,介绍了C语言中的运算符,如算术运算符、关系运算符、逻辑运算符等,以及它们的优先级和结合性。
第四章:控制语句控制语句是程序设计中的重要组成部分,本章讲解了C语言中的三种基本控制结构:顺序结构、选择结构和循环结构。
通过大量的实例代码,帮助读者理解如何使用if、switch、for、while和do-while等语句来控制程序流程。
第五章:数组数组是C语言中一种重要的数据结构,用于存储具有相同类型的多个数据项。
本章详细介绍了一维数组和二维数组的定义、初始化和使用,以及数组在程序设计中的应用。
第六章:指针指针是C语言中的核心概念之一,它允许程序员直接操作内存地址。
本章讲解了指针的基本概念、指针的声明、指针与数组的关系,以及指针在函数中的应用。
第七章:函数函数是C语言中实现模块化编程的基本单位。
本章详细介绍了函数的定义、声明、调用以及参数传递机制。
同时,探讨了递归函数和指针函数等高级主题。
第八章:预处理指令预处理指令是C语言提供的一组特殊指令,用于在编译之前对源代码进行预处理。
c语言实践报告总结2篇
c语言实践报告总结2篇一、实习时间:20xx年x月x日—20xx年x月x日二、实习地点:第一微机室三、实习目的:1、熟悉我们自己所用的计算机的C语言开发环境,并且能够熟练掌握,达到错误能找到原因并且加以改正。
2、加深对课本理论知识的理解,进一步掌握书中重点、难点实例,锻炼自己的编写程序能力和实际应用能力。
3、上机调试程序的过程中,发现错误,解决错误,保证程序的正确运行,运行结果与给定结果完全相同。
4、学会用书中基本知识解决实际中的一些问题,将书本所学的内容与实际操作相结合,掌握把实际问题转变为C 语言描述的算法的方法,明确思路。
将自身的不足与缺陷改掉,养成良好编辑风格5、培养我们的主观能动性、沟通、表达能力和团队合作意识,为我们以后的发展打下基础。
四、实习内容及方法:在本次实习中,我们采用了由浅及深、由易到难的实习方法,而且也是按照书本的教学进程内容进行的,同时采取了实际应用与理论相结合的方法,在机房里面实习,一边理解,思考做题的思路与解法,另一边就可以马上进行上机实际操作。
这对于我们加深对C语言的理解、操作以及动手能力都有了很大的帮助与提高。
实训的内容主要分为了七个版块:第一版块:1、Turbo C运行环境。
了解TC的基本环境,熟悉常用菜单项和快捷键:在这一小节中,需要熟练的掌握并应用Turbo C的运行环境,和基本配置。
Turbo C是在计算机上广泛使用的一个C语言开发环境,它具有方便、直观、易用的界面和丰富的函数库。
它把程序的编辑、编译、连接和运行等操作去不都集中在一个界面上进行,使用非常方便。
并且Turbo C不需要特别安装,只需要将其拷贝到硬盘上就可以使用了。
为了方便管理用户的程序文件和维Turbo 的运行环境,客户应在机子上建立自己的工作目录,一边用来存放自己所需要开发的源程序文件。
下面就是建立怎样自己文件夹,在空白区域内输入自己所建立的文件夹路径即可。
2、C程序的编辑、编译、连接和运行过程。
c语言程序设计教程(第2版)课后题及模拟题参考答案
c语⾔程序设计教程(第2版)课后题及模拟题参考答案c语⾔程序设计教程(第2版)课后题及模拟题参考答案习题1 (4)1-1 填空题 (4)1-2 思考题 (4)1-3 编程题 (5)习题2 (6)2-1 单选题 (6)2-2 思考题 (6)习题3 (7)3-1 选择题 (7)3-2 填空题 (7)3-3 编程题 (8)习题4 (11)4-1单选题 (11)4-2填空题 (11)4-3 编程题 (11)习题5 (16)5-1单选题 (16)5-2填空题 (16)5-3 编程题 (16)习题6 (22)6-1单选题 (22)6-2填空题 (22)习题7 (25)7-1单选题 (25)7-2填空题 (25)7-3 编程题 (25)习题8 (26)8-1单选题 (26)8-2填空题 (26)8-3 编程题 (26)习题9 (30)9-1单选题 (30)9-2填空题 (30)9-3 编程题 (30)习题10 (38)10-1单选题 (38)10-2填空题 (38)10-3 编程题 (38)习题11 (41)11-1单选题 (41)11-2填空题 (41)习题12 (42)12-1单选题 (42)12-2 填空题 (42)实验1 熟悉Visual C++6.0可视化集成开发环境 (43)实验2 顺序结构程序设计 (43)实验3 选择结构程序设计 (43)实验4 循环结构程序设计 (44)实验5 函数 (47)实验6 数组 (54)实验7 指针 (58)实验8 结构体和共⽤体 (61)实验9 ⽂件 (63)实验10 综合编程 (64)模拟试卷(⼀)参考答案 (65)模拟试卷(⼆)参考答案 (67)习题11-1 填空题1. 函数2. 主函数main(),主函数main()3. 主函数main()4. 函数⾸部,函数体5. {, }6. /*, */7. 顺序结构,选择结构,循环结构8. .c, .obj, .exe1-2 思考题1. 结构化程序设计是指:为使程序具有⼀个合理的结构以保证程序正确性⽽规定的⼀套如何进⾏程序设计的原则。
C语言程序设计(第2版)-- 课后题答案.
《C语言程序设计能力教程(第二版)》课后作业及实训题参考答案第1章进入C语言程序世界二、1. I love China!printf("we are students.\n")2. 6项目实训题参考答案1.编写一个C程序,输出以下信息:* * * * * * * * * * * * * * * * * * * *I am a student!* * * * * * * * * * * * * * * * * * * *main(){ printf("********************\n");printf(" I am a student!\n ");printf("********************\n");}2.已知立方体的长、宽、高分别是10cm、20cm、15cm,编写程序,求立方体体积。
解:main(){int a,b,c,v;a=10;b=20;c=15;v=a*b*c;printf("v=%d",v);}本程序运行结果为:v=3000第2章编制C程序的基础知识一选择题C B A B A C C二操作题,2,-8,23.000000,2.500000,-8.0000002. ABC DEFGHwhy is 21+35 equal 523.3 14 32 31 24. aa bb cc abcA N项目实训题1.定义一个符号常量M为5和一个变量n值为2,把它们的乘积输出。
#define M 5main(){ int n,c;n=2; c=M*n;printf("%d\n",c); }2.编程求下面算术表达式的值。
(1)x+a%3*(int)(x+y)%2/4,设x=2.5,a=7,y=4.7;(2)(float)(a+b)/2+(int)x%(int)y,设a=2,b=3,x=3.5,y=2.5。
C语言程序设计(第2版)
作者简介
作者简介
衡军山(1974—),男,河北承德人,承德石油高等专科学校计算机与信息工程系副教授,从事计算机方面 的教学和研究工作。
马晓晨(1968一),男,河北保定人,承德石油高等专科学校计算机与信息工程系教授,博士,主要从事三 维可视化技术研究工作。
谢谢观看
教材目录
教材目录
(注:目录排版顺序为从左列至右列)
教学资源
配套教材
课程资源
配套教材
《C语言程序设计(第2版)》有配套的实践教学参考用书——《C语言程序设计实训指导(第2版)》。
课程资源
《C语言程序设计(第2版)》配有60个微课视频,书同时为国家精品资源共享课“C语言程序设计”的配套教材。
2020年12月28日,《C语言程序设计(第2版)》由高等教育出版社出版发行。
内容简介
内容简介
该书分为基础篇和提高篇两部分,共10个单元,其中,基础篇包括程序设计宏观认识、程序设计基础知识、 顺序结构程序设计、选择结构程序设计和循环结构程序设计5个单元;提高篇包括批量数据的处理、使用函数分工 合作、使用指针访问数据、结构体、共用体与用户自定义类型,以及文件的读写操作5个单元。每个单元都由导学、 本单元学习任务、知识描述、单元总结和知识拓展这5部分组成,同时辅以随堂练习。
《C语言程序设计(第2版)》的其他数字化课程教学资源,还包括课程标准、授课计划、电子教案、教学课 件PPT、学习思维导图、案例源码、习题答案等。
教材特色
教材特色
该书每个单元都设计了“导学”环节,以互动的方式引导学生逐步进入到学习情境之中;设计了单元学习任 务环节,使学生在进入学习前就能明确本单元的学习任务;设计了具有互动特点的“单元总结”环节,使教学总 结不再是教师的独角戏,帮助学生巩固和提升知识和能力,在互动中形成了“再学习”;设计了知识拓展环节, 作为学生必要的知识补充,丰富其知识量,培养和拓展其编程思维,赋予其想象的空间。该书知识与实践高度融 合,在教学过程中,培养学生集掌握知识和提升编程能力为一体,学生学习和教师教学形成互动。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C 语言程序设计实习指导(第二版)南开大学滨海学院计算机基础教研室前言学习程序设计,每个人都要经历一个过程:无从下手→开始入门→得心应手。
根据多年的教学经验,为了缩短这个过程,建议大家坚持“三多”的学习原则:一是多看例题,从中吸取丰富的营养,得到一些启示;二是多编写程序,在应用中不断提高程序设计能力;三是多上机实习,逐步积累程序设计经验,不断提高程序设计能力。
只要认真坚持“三多”学习原则,我们相信:不久,你就会成为一位程序设计的高手和专家。
下面对上机实习做几点说明:1. C语言程序设计是一门实践性很强的课程,不通过实习难以掌握。
学习的目的在于应用,实习是提高应用能力的有效途径,我们要高度重视实习环节。
2. 每次实习前要做好预习。
认真阅读实习指导,明确实习目的,有些题目要事先写出程序,以便充分利用机时,提高学习效率。
3. 每个实习中的题目,包括以下几种类型:①典型例题。
同学们可以从这类题目中学习程序设计的思想和方法。
有些例题具有实用性,它使你了解所学知识的用途;有些例题颇具趣味性,它可以激发你的学习兴趣。
伟大科学家爱因斯坦说过:“兴趣是最好的老师。
”学习兴趣越浓,学习就越主动,能力提高得就越快。
②给出提示的题目。
这类题目给出算法或部分程序,引导同学完成整个程序。
入了门,你便可以发挥自己的聪明才智了。
③不给提示的题目。
这类题目供同学们自己分析、研究,独立完成程序设计,在实践中不断提高程序阅读和程序设计能力。
④自选题。
同学们可以选择本专业课程中的问题或其它问题,利用C语言编写程序加以解决,来提高解决实际问题的能力和应用水平。
编者2010年2月- 1 -目录上机实习基础知识 (3)实习1 开发C程序的基本方法 (7)实习2 顺序结构程序设计㈠ (10)实习3 顺序结构程序设计㈡ (11)实习4 程序阅读能力训练 (12)实习5 选择结构程序设计㈠ (14)实习6 选择结构程序设计㈡ (15)实习7 循环结构程序设计㈠ (17)实习8 循环结构程序设计㈡ (18)实习9 循环结构程序设计㈢ (20)实习10 一维数组 (22)实习11 二维数组 (23)实习12 程序设计综合练习㈠ (25)实习13 函数㈠ (30)实习14 函数㈡ (31)实习15 函数㈢ (34)实习16 指针㈠ (36)实习17 指针㈡ (38)实习18 指针㈢ (41)实习19 程序设计综合练习㈡ (43)实习20 复合类型㈠ (47)实习21 复合类型㈡ (49)实习22 文件㈠ (51)实习23 文件㈡ (52)实习24 预处理命令 (54)实习25 程序设计综合练习㈢ (56)- 2 -- 3 -上机实习基础知识一、开发C 程序的一般过程1. 分析问题,确定算法首先要对问题进行分析,找出合适的算法。
所谓算法是指解决一个问题而采取的方法与步骤。
解决一个问题的算法往往不是唯一的,要找出效率高而且比较简单的算法,然后将算法用流程图、自然语言等方式表示出来,这是关键的一步。
下面举例说明如何建立模型和确定算法。
在高度为100m 的铁塔上平抛一物体,初速度v 0=20m/s ,求其运动轨迹(以0.1s 为时间间隔,直到物体落到地面为止)。
分析:设坐标原点在塔底,物体初始位置是x=0,y=100。
物体在时刻t 的位置是:20gt21100y tv x -==这两个公式就是该问题的数学模型。
求出物体运动轨迹的算法是:按以上公式,每隔0.1s 计算一组x 、y 的值,直到y=0为止。
图1 求平抛物体运动轨迹流程图1. 语法错误用自然语言描述算法:① 定义变量、赋初值。
② 计算t=0.1时物体的坐标x 、y 并输出,然后t 增加0.1。
③ 判断:如果y>0,则重复步骤②,否则结束。
用流程图描述算法:如图1所示。
2. 编写程序 按照已确定的算法编写程序称为编码。
编码完成后,要进行检查,发现并修改那些由于疏忽大意而造成的错误。
3. 上机调试 上机调试包括程序的编辑、编译、连接和运行,用“试验数据”进行测试,发现并排除程序中的错误。
有人说“三分编程七分调试”,说明程序调试不仅重要,而且有时工作量也是很大的。
二、程序中错误类型程序中的错误可分为两类:语法错误和逻辑错误。
语法错误是指违背了C语法规则的错误。
例如,语句末尾遗漏了分号、关键字拼写错误、参数类型或个数不匹配等。
对这类错误,编译系统能够发现并显示出错信息,因此语法错误是不难排除的。
需要注意的是:∙有时系统提示的出错行并没有错误,而错误出现在上一行。
∙有时提示多条错误信息,实际上可能只有一、两处错误。
例如,程序中所使用的变量未定义,编译时就会对含有该变量的所有语句显示出错信息,只要加上变量定义语句,后面的错误就自然排除了。
因此,当提示多处错误时,应该从第一条错误开始修改。
2. 逻辑错误逻辑错误是指程序中没有语法错误,但运行结果不对。
这种错误较难发现,需要仔细查找。
例如,计算s=1+2+3+4+…+100,程序段如下:int s=0, i=1;while ( i<=100 )s=s+i;i++;其中没有语法错误,运行时却出现死循环。
原因是循环时语句i++; 不能被执行,所以i 的值不变,总是满足条件。
循环体应该使用花括号构成复合语句:while ( i<=100 ){ s=s+i; i++; }还需要注意:程序中虽然没有语法错误和逻辑错误,但是运行时也可能出错。
例如,有如下程序段:float a, b;scanf("%f, %f", &a, &b);printf("%f\n", a/b);运行时,如果为b的值输入0,0做除数则会出错。
该程序不能经受各种数据的“考验”,不具有“健壮性”。
修改方法是在第2行后加一条if语句,如果b的值等于0,则输出“除数为0”并终止程序的运行。
三、程序测试程序测试的目的在于发现程序中的错误。
对于大型软件,要使用专门的测试技术和方法,要设计测试用例。
在学习阶段开发的程序一般较小,只要通过一些简单的试验数据,将运行结果与预期结果进行比较,就可知道程序是否正确。
例如,计算前n个自然数之和的程序:#include <stdio.h>void main(){ int i, n, sum=0;printf("请输入1个自然数:");scanf("%d", &n);for(i=1; i<=n; i++)sum=sum+i;- 4 -printf("前%d个自然数之和为%d\n", n, sum);}测试方法:运行程序,先输入3,输出结果为6,与预期结果一致;再运行一次,输入10,输出结果为55,又与预期结果一致,则说明程序正确。
四、程序中常见错误1.使用了未定义的变量。
例如:void main(){ a=1; b=2;printf("%d\n", a+b );}C程序中的所有变量必须“先定义、后使用”,定义就是说明变量的类型,系统为其分配相应的存储空间。
应在函数体的开头加一条语句:int a, b;2.使用变量名时,忽视了大小写字母的区别。
例如,定义了变量a,使用时写成A,实际上,它们是两个不同的变量。
3. 在scanf() 函数中,遗漏了取地址运算符&。
例如,把语句scanf("%d,%d", &a, &b); 写成了scanf("%d,%d", a, b);4.输入输出数据的类型与所用格式说明符不一致。
这类错误编译时不显示出错信息,但运行结果不对,要格外注意。
例如:float a=1.5;printf("%d\n", a*a); // 输出结果是05.误把赋值号当作等号使用。
例如:if(a=b) printf("a equal to b");只要b不等于0,赋值表达式a=b的值就不等于0,因此总满足条件。
即是说,无论a是否等于b,都输出a equal to b。
6.忽视了字符与字符串的区别。
例如:char ch;ch="A"; // ch是字符型变量,而"A"是字符串。
应改为ch='A';7.不该加分号的地方加了分号。
例如:if(a>=b); // 这里不能加分号printf("%d\n", a);elseprintf("%d\n", b);8. 将最大下标等同于数组元素个数。
由于数组元素的最小下标规定为0,所以最大下标等于元素个数减1,而不是元素个数。
这类错误编译时不显示出错信息,但运行结果不对,要格外注意。
例如:int a[5]={1,2,3,4,5};printf("%d\n", a[5]); //没有元素a[5],最大下标的元素是a[4]- 5 -五、C库函数C语言提供了丰富的库函数(或称标准函数)。
了解库函数的功能、函数名、参数类型、参数个数及函数值的类型,就可以直接引用库函数。
引用库函数要在程序中使用#include命令包含相应的头文件。
常用的库函数列于表1和表2中。
表1 数学函数(头文件math.h)表2 字符函数和字符串函数- 6 -- 7 -实习1 开发C 程序的基本方法一、实习目的学习在VC++集成开发环境下编辑、编译、连接和运行C 程序的基本操作。
二、实习内容1. 下面程序的功能是计算长方形的面积。
设长和宽为整数,其值由键盘输入。
#include <stdio.h> void main() { int a, b, s;printf("请输入长和宽:"); // 输出提示信息scanf("%d,%d", &a,&b); // 输入的两个数据之间加逗号,如3,8 s=a*b;printf("长方形面积为%d\n", s); }操作方法:(1) 创建一个空工程,① “文件”菜单→“新建”命令,弹出“新建”对话框,如图1所示。
在“工程”选项卡中选定“Win32 Console Application ”,输入工程名称(如ex),输入位置(如D:\ex),单击“确定”按钮。
图1② 在弹出的对话框(图2)中选定单选钮“一个空工程” ,单击“完成”按钮,弹出第2个对- 8 - 话框(图3) ,再单击“确定”按钮,系统自动在D 盘上创建文件夹ex ,并创建了一个空工程。
图2 图3(2) 编辑建立源程序文件① “文件”菜单→新建”命令;在“文件”选项卡中选定“C++ Source File ”,如图4所示。