1、C语言程序设计实验指导上交大课前练习改错完善程序课后练习参考问题详解10修改实验一 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. 20 8 70 0 2. Abs3 Class _else sum my_class 、 3block a+b for fun(4) a-b 3.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: 2 2 2error C2065: a1 : undeclared identifier变量a1没有定义sum=a+b+c 1 error C2146: syntax error : missing ; before id
3、entifier printfprintf语句之前缺少分号sum=a+b+c;0 error(s), 0 warning(s)a=1 b=3 c=2 sum=6 语句以分号结束;变量要先定义后使用 。程序2: 2 2 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: 1 error C2106: = : left operand must be
4、l-value赋值符号左边参数错误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 (删除最后“语句”两字)22. dou
5、ble23. a=3(回车)实验三 if选择结构语句课前练习1. 9 0 2. 11 0 3.(1)n%2=0(2)n%2!=0(3)a=0 & a=a & a=A & a=a & a=A & a=Z)(7) (x10) & (x04.-15.D6.10 30 407.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) printf(Wrongn);(3)printf(Too lown);(二)完善程序1.
6、(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. 4 11 2. if(k=1)|(k=2) printf(an); else if(k=3)|(k=4)|(k=5) printf(bn); else printf(cn);3.
7、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%10(二)完善程序1.(1)grade/10(2)break(3)default2.(1)x=0)(3)if(
8、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=n k+ 9.A10.C11.C实验容(一)程序改错1. (1)int sum=1,s0=0,s1=0,s2=1,s;(2)for(n=4;n=10;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;
9、(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.206. 6 6 7.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=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)f
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1