C语言程序设计实验指导_第1页
C语言程序设计实验指导_第2页
C语言程序设计实验指导_第3页
C语言程序设计实验指导_第4页
C语言程序设计实验指导_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验一Visual C+ 集成环境实验内容(一)程序改错1.( 1)无法运行( 2)将第二个 C 程序重新存放到另一个工程文件中(3)同一个工程文件只能有一个main 函数2.( 1) /* 一个简单的程序 */( 2) void main()( 3) 3.( 1) int a,b,c;( 2) a=2;( 3) c=a*b;(二)完善程序1.( 1) year( 2) month( 3) day2.( 1) c( 2) a*a+b*b( 3) c3.( 1) 4( 2) 4*a( 3) s课后练习1.D2.D3.A4.C5.C6.C7.stdio.h8.main 函数实验二数据类型、运算符和

2、表达式课前练习1.2087002.Abs3Class_elsesum my_class、3blocka+b forfun(4)a-b3.B4.D5.A6.C7.D8.B实验内容(一)程序改错1.( 1) int x1,x2,x3,x4;( 2) scanf(%d,%d,&a,&b);( 3) c=x4*1000+x2*100+x3*10+x1;2.程序 1:22 error C2065: a1 : undeclared identifier变量 a1 没有定义sum=a+b+c 1error C2146: syntax error : missing ; before identifier p

3、rintfprintf语句之前缺少分号sum=a+b+c; 0 error(s), 0 warning(s)a=1b=3c=2sum=6语句以分号结束;变量要先定义后使用。程序 2:22 error C2065: sum : undeclared identifier变量 sum 没有定义int sum=a+b;1error C2086: c : redefinition变量 c 重复定义c=a+b+sum; a=1 b=3 sum=8在同一个函数体内,变量要先定义后使用,但不能重复定义程序 3: 1error C2106: = : left operand must be l-value赋值

4、符号左边参数错误c=a+b; c=4赋值符号左边只能是变量,不能是常量或表达式3.( 1) t=a;( 2) a=b;( 3) printf(a=%dtb=%dn,a,b);(二)完善程序1.( 1) int n( 2)” %d” ,&n( 3) s2.( 1) float s( 2) (float)a/b( 3) %f3.( 1) #include( 2) pow(x,y)( 3)“ %lf ” ,s课后练习1.D2.D3.A4.B5.C6.D7.D8.A9.C10.A11.A12.B13.B14.C15.B16.A17.C18.819. 5 和 420.2.00000021. double

5、 (删除最后“语句”两字)22. double23. a=3(回车 )实验三if 选择结构语句课前练习1.902.1103.( 1) n%2=0( 2) n%2!=0( 3) a=0 & a=a & a=A & a=a(7) (x-10)&|a10)| (a=A & & (x=20)a04.-15.D6.1030407.C8.A9.D10.A实验内容(一)程序改错1.( 1) scanf(%d,&t);( 2) if(t%5=0 & t%7=0)( 3) else2.( 1) char y;( 2) if(x=0)( 3) printf(%cn,y);3.( 1) if(x=m)( 2) pr

6、intf(Wrongn);( 3) printf(Too lown);(二)完善程序1.( 1) #include( 2) (-b+sqrt(d)/(2*a);( 3) sqrt(fabs(d)/(2*a);2.( 1) c=a& c=v& c=a& c=A& c=Z( 3) else课后练习1.D2.C3.A4.A5.B6.C7.C8.C9.B10.D11.A12.D13.D14.A15.2,016.A17.D18.A19.D20.B21.C22.!23.D24.C25.D26.B实验四switch 开关语句课前练习1.4112.if(k=1)|(k=2)printf(an);else if

7、(k=3)|(k=4)|(k=5)printf(bn);elseprintf(cn);3.switch (x)case 1:case 2:case 3:printf(xn);break;case 19:case 20:case 21:printf(yn);break;default:printf(zn);实验内容(一)程序改错1.( 1) switch(x)( 2) case 4:( 3) default:2.( 1) a=s/250;( 2) case 0:d=0;break;( 3) default:d=15;3.( 1) else p=1;( 2) a=num/1000;( 3) num

8、%10(二)完善程序1.( 1) grade/10( 2) break( 3) default2.( 1) x=0)( 3) if(grade=0& ch=a& ch=A& ch=Z)3.( 1) fabs(t)( 2) s/n( 3) pi*4课后练习1.A2.A3.D4.B5.A6.C7.A8.30实验六for 循环结构语句课前练习1.C2.D3.C4. for(i=100;i!=0;i-)printf(p);5.D6.C7.D8. k=nk+9.A10.C11.C实验内容(一)程序改错1.( 1) int sum=1,s0=0,s1=0,s2=1,s;( 2) for(n=4;n=10;

9、n+)( 3) s2=s;2.( 1) for(i=1;i=y;i+)( 2) t*=x;( 3) t=t%1000;3.( 1) int i,count=0;( 2) if(i%7=0 | i%11=0) &(i%77!=0)( 3) count+;(二)完善程序1.( 1) s=0.0( 2) scanf(%d,&n)( 3) s+1.0/s12.( 1) i%100( 2) a+b+c=x( 3) t+3.( 1) 2( 2) n( 3) n%i=0课后练习1.A2.B3.C4.A5.D6.C7.A8.B9.A10.C实验七循环控制语句课前习题1.D2.循环语句3.break4.A5.2

10、06.667.88.B实验内容(一)程序改错1.( 1) int i,j,k,sum=0;( 2) for(i=1;i=1&k=6) & (i!=0)&(j!=0)|(k=0)2.( 1) for (j=2; j= i)3.( 1) m=n;( 2) while(m!=0 & m=c)( 3) if(m=0)(二)完善程序1.( 1) ic&b+ca&a+cb)( 3) else if(a=b|b=c|a=c)2.( 1) if(n=1)( 2) c=age(n-1)+2;( 3) printf(%dn,age(5)3.( 1) while(n!=i)( 2) if(n%i=0)( 3) n=

11、n/i;(二)完善程序1.( 1) i*i=x( 2) return 0( 3) f(i+100) & f(i+168)2.( 1) x( 2) s1+s2+s3=15( 3) t+3.( 1) ft( 2) return f( 3) fun(n)课后练习1.C2.C3. A 4.D5.A6.B7.B8.A9.A10.C11.A12.A13.B14.D15.10,2016.13111217.218.3119.-3120.22121.2222.main 函数23.returnvoid24.voidint实验九函数的其他应用课前练习1.B2.A3.A4.C5.D6.D7.558.C9.D10.A实

12、验内容(一)程序改错1.(1) #define SWAP(x,y) temp=x;x=y;y=temp( 2) int a,b,temp;( 3) SWAP(a,b);2.( 1) #define DIV(m) (m)%3=0( 2) scanf(%d,&m);( 3) if(DIV(m)3.( 1) switch(n%10)( 2) case 1:c1+;break;( 3) case 2:c2+;break;(二)完善程序1.(1) #define f1(x,y)(2) #define f2(a,b)x*y(a)*(b)( 3) #include2.(1)1248(2)12123.(1)

13、23138523151052 3( 2)略课后习题1.C2.C3.A4.C5.D6.A7.A8.139.11010.911.4012.1013.2714.auto15.672016.4817.1218.5,2519.620.3实验十一维数组课前练习1-3. BDD4. 24 85. B6. int sss;7. 37158.654,321实验内容(一)程序改错1.(1) scanf(%f, a);改为 scanf(%f, &a);( 2) max=min=avg=a1; 改为 max=min=avg=a0;(3) if(minai)或 if(aimin)2.(1) while(x+i!=0);

14、改为while(xi+!=0);(2) while(xi = 0)改为 while(xi = 0)( 3) sum=c; 改为 sum/=c;3.( 1) s=count=1; 改为 s=count=0;(2) scanf(%d, ai);改为scanf(%d, &ai);( 3) break; 改为 continue;(4) printf(s=%fcount=%fn, s, count);改为printf(s=%dcount=%dn, s, count);(二)完善程序1.( 1) k=p2.( 1) #include( 2) aver=s/N( 3) s=fabs(ai-aver)( 4)

15、 printf( “%f ”,t)3.( 1) s=i*3+j*5( 2) break( 3) ak!=0 & s!=0课后练习1-2. DC3. I=1 、 xI-14.012,2015. 47,176. 15,127. 6, 28. 234, 5569. 023,235,71113实验十一二维数组课前练习1. A2. 96、 83-6. BBDB7. x4 、 y3、 z=38.0、10、210、3210实验内容(一)程序改错1.( 1) s1=s2=s3=s4=0 改为 s1=0,s2=0,s3=0,s4=0(2) s2=s2+amj改为s2=s2+am-1j(3) for(i=0; i

16、m; i+)改为for(i=1; im-1; i+)( 4) s=s1-s2-s3-s4 改为 s=s1+s2+s3+s42.(1) int a33,sum改为int a33,sum=0(2) scanf(%d,aij)改为scanf(%d,&aij)(3) sum=sum+aij改为 sum=sum+aii( 4) sum=%fn 改为 sum=%dn3.(1) int i,j,s,a33,sum(2) for(i=0; i3; i+)改为改为int i,j,s,a33,sum=0for(i=0; i3; i=i+2)(3) sum=*aij改为sum*=aij(二)完善程序1.( 1) s

17、um=0( 2) aii2.( 1) iM( 2) jN( 3) aij( 4) printf(n)3.( 1) printf(n)( 2) (j+2)%3( 3) printf(n)课后练习1-3. CDD4. 85. sum1=38, sum2=346. A7. 168. 100, 120, 3589. 11,133 110.136102594 87实验十二数组与函数课前练习1-3. ACB4. 改变、不改变5. D实验内容(一)程序改错1.(1) fun(int a,int n)改为double fun(int a,int n)(2) int i,n;改为int i;( 3) doubl

18、e s; 改为 double s=0;( 4) s=s+a(i); 改为 s=s+ai;(5) ave=fun(a,n);改为ave=fun(a,n);2.(1) float j=0;改为float xa=0;( 2) j=n 改为 jn( 3) j=n 改为 jn( 4) return xa 改为 return c3.( 1) sum=array0 改为 sum=0(2) int score10改为 float score10(3) scanf(%f, score)改为scanf(%f, &score)( 4) aver=average(score10) 改为 aver=average(sc

19、ore)课后练习1-2. DC3. -1、 24. 225. 3、6、96.1、 ai-1j-1+ai-1j、 j pi改为max = A & si = a & si= 、 si+32z、 0、 s2j!=s2n2-j-1 、 jn3 、 f(s)实验十四指针与一维数组课前练习1. DDDAC2. 5实验内容(一)程序改错1.(1) printf(%d , p+i)改为printf(%d , *(p+i)( 2) m=0 改为 m=i( 3) k=m 改为 m=k(二)完善程序1.( 1) math.h( 2) &b( 3) *pb2.( 1) n( 2) *(p +i-1) * 3 - 1课

20、后练习1. 42-11. BBBACDACAA12. 2、 213. 3、 714. 4、 16、 6415. 36、 21416. 26、 22、 46实验十五指针与字符串课前练习1-6. CBAAAA实验内容(一)程序改错1.( 1) int *a = upper 改为 int *a = &upper(2) int *b = lower改为int *b = &lower;( 3) a+ 改为 (*a)+( 4) b+ 改为 (*b)+(二)完善程序1.( 1) *p!=0( 2) *p=Z( 3) *p += 322.( 1) s( 2) *p!=0( 3) *p-0课后练习1-9. BD

21、CDDCBAD10. gae11. 65、 7、 8、7612. b5、 c7、 h1013. 432156、 43265114. jih 、 gfe、 dcba实验十六指针与函数课前练习1-2. BB3. 1002004. B实验内容(一)程序改错1.(1) scanf(%d, p)改为scanf(%d, p+)(2) *p *max(3) if(max = arr)改为if(max = arr)(4) while(i=0; in; i+);改为for(i=0; in; i+)2.( 1) int num 改为 int num5( 2) numi = 0 改为 numk=0(3) switch (s)改为switch (*s)( 4) numk+ 改为 numi+(二)完善程序1.( 1) int *x( 2) xi=xi+1( 3) n-1( 4) f=1课后练习1-4. DCCD5. 10,15,15,106. 21437. iaj 、 ” %d” ,p+i、 ” %d” ,*(p+i)8.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论