C语言程序设计实验指导_上交大_课前练习-改错-完善程序-课后练习

更新时间:2023-04-08 16:02:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

C语言程序设计实验指导_上交大_课前练习-改错-完善程序-课后练习参考答案--2018.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)day

仅供学习与交流,如有侵权请联系网站删除谢谢2

精品资料

2.

(1)c

(2)a*a+b*b

(3)c

3.

(1)4

(2)4*a

(3)s

课后练习

1.D

2.D

3.A

4.C

5.C

6.C

7.stdio.h

8.main函数

实验二数据类型、运算符和表达式课前练习

1. 20 8 70 0

2. Abs3 Class _else sum my_class 、

3block a+b for fun(4) a-b

3.B

4.D

5.A

6.C

7.D

仅供学习与交流,如有侵权请联系网站删除谢谢3

精品资料

8.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

②error C2065: 'a1' : undeclared identifier

变量a1没有定义

sum=a+b+c

③ 1

error C2146: syntax error : missing ';' before identifier 'printf' printf语句之前缺少分号

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;

仅供学习与交流,如有侵权请联系网站删除谢谢4

精品资料

1

error C2086: 'c' : redefinition

变量c重复定义

c=a+b+sum;

③a=1 b=3 sum=8

④在同一个函数体内,变量要先定义后使用,但不能重复定义程序3:

① 1

error C2106: '=' : left operand must be l-value

赋值符号左边参数错误

c=a+b;

②c=4

③赋值符号左边只能是变量,不能是常量或表达式

3.

(1)t=a;

(2)a=b;;

(3)printf("a=%d\tb=%d\n",a,b);

(二)完善程序

1.

(1) int n

(2)”%d”,&n

(3)s

2.

(1)float s

(2)(float)a/b

仅供学习与交流,如有侵权请联系网站删除谢谢5

精品资料

(3)%f

3.

(1)#include

(2)pow(x,y)

(3)“%lf”,s

课后练习

1.D

2.D

3.A

4.B

5.C

6.D

7.D

8.A

9.C

10.A

11.A

12.B

13.B

14.C

15.B

16.A

17.C

18.8

19. 5和4

20.2.000000

21. double (删除最后“语句”两字)

22. double

23. a=3(回车)

仅供学习与交流,如有侵权请联系网站删除谢谢6

精品资料

实验三 if选择结构语句

课前练习

1. 9 0

2. 11 0

3.

(1)n%2==0

(2)n%2!=0

(3)a>=’0’ && a<=’9’

(4)a>=’a’ && a<=’z’

(5)a>=’A’ && a<=’Z’

(6)(a>=’a’ && a<=’z’) || (a>=’A’ && a<=’Z) (7) (x<-10) || ((x>10) && (x<=20))

(8)a%b!=0

(9)a*b>0

4.-1

5.D

6.10 30 40

7.C

8.A

9.D

10.A

实验内容

(一)程序改错

1.

(1)scanf("%d",&t);

仅供学习与交流,如有侵权请联系网站删除谢谢7

精品资料

(2)if(t%5==0 && t%7==0)

(3)else

2.

(1)char y;

(2)if(x==0)

(3)printf("%c\n",y);

3.

(1)if(x==m)

(2){ printf("Wrong\n"); (3)printf("Too low\n");}(二)完善程序

1.

(1)#include

(2)(-b+sqrt(d))/(2*a);

(3)sqrt(fabs(d))/(2*a);

2.

(1)c>='a'&& c<='u'

(2)c>='v'&& c<='z'

(3)c=c+5-26;

3.

(1)c>='a'&& c<='z'

(2)c>='A'&& c<='Z'

(3)else

仅供学习与交流,如有侵权请联系网站删除谢谢8

精品资料

课后练习

1.D

2.C

3.A

4.A

5.B

6.C

7.C

8.C

9.B

10.D

11.A

12.D

13.D

14.A

15.2,0

16.A

17.D

18.A

19.D

20.B

21.C

22.!

23.D

24.C

25.D

26.B

实验四 switch开关语句课前练习

1. 4 11

2.

if((k==1)||(k==2)

printf("a\n");

else if((k==3)||(k==4)||(k==5))

printf("b\n");

else

printf("c\n");

仅供学习与交流,如有侵权请联系网站删除谢谢9

精品资料

3.

switch (x)

{

case 1:

case 2:

case 3:printf("x\n");break;

case 19:

case 20:

case 21:printf("y\n");break;

default:printf("z\n");

}

实验内容

(一)程序改错

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

仅供学习与交流,如有侵权请联系网站删除谢谢10

精品资料

(2)break

(3)default

2.

(1)x<0

(2)a=x/10

(3)a

3.

(1)month

(2)days=31

(3)(year%4==0 && year%100!=0)||(year%400==0)

课后练习

1.C

2.D(将程序最后一条语句改为:printf("a=%d,b=%d\n",a,b);)

3.A

4.B

5. pass 中

及格

不及格

6.2

实验五 while、do… while循环结构语句课前练习

1.0

2.10

3.A

仅供学习与交流,如有侵权请联系网站删除谢谢11

精品资料

4.C

5.A

6.A

7.C

实验内容

(一)程序改错

1.

(1)long k=1;

(2)num/=10;

(3)while(num);

2.

(1)int m=0,mc=0,j;

(2)if((k%7==0)||(k%11==0)) (3) m=m+k

3.

(1)max=min=grade;

(2)while(grade>=0)

(3)if(grade

(二)完善程序

1.

(1)t%2==0

(2)m=m*10+t;

(3)n=n/10 ;

2.

(1)ch=getchar()

仅供学习与交流,如有侵权请联系网站删除谢谢12

精品资料

(2)ch>='0'&& ch<='9'

(3)(ch>='a'&& ch<='z') ||(ch>='A'&& ch<='Z') 3.

(1)fabs(t)

(2)s/n

(3)pi*4

课后练习

1.A

2.A

3.D

4.B

5.A

6.C

7.A

8.30

实验六 for循环结构语句课前练习

1.C

2.D

3.C

4. for(i=100;i!=0;i--) printf("p");

5.D

6.C

7.D

8. k<=n

k++

9.A

10.C

11.C

仅供学习与交流,如有侵权请联系网站删除谢谢13

精品资料

实验内容

(一)程序改错

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;

(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/s1

2.

(1)i%100

(2)a+b+c==x

(3)t++

仅供学习与交流,如有侵权请联系网站删除谢谢14

精品资料

3.

(1)2

(2)n

(3)n%i==0

课后练习

1.A

2.B

3.C

4.A

5.D

6.C

7.A

8.B

9.A

10.C

实验七循环控制语句课前习题

1.D

2.循环语句

3.break

4.A

5.20

6. 6 6

7.8

8.B

仅供学习与交流,如有侵权请联系网站删除谢谢15

精品资料

实验内容

(一)程序改错

1.

(1)int i,j,k,sum=0;

(2)for(i=1;i<=3;i++)

(3)if((k>=1&&k<=6) && (i!=0)&&(j!=0)||(k==0)) 2.

(1)for (j=2; j

(2)if (i%j == 0)

(3)if (j>= i)

3.

(1)m=n;

(2)while(m!=0 && m>=c)

(3)if(m==0)

(二)完善程序

1.

(1)i<10

(2)j%3!=0

(3)continue;

2.

(1)total=0;

(2)sum=0;

(3)total+sum;

仅供学习与交流,如有侵权请联系网站删除谢谢16

精品资料

3.

(1)j=(y%100)/10;

(2)i!=j && i!=k && k!=j

(3)t%5==0

课后练习

1.D

2.C

3.D

4.B

5.C

6.B

7.A

8. 9 1

9. 10 7

10. x=16 y=8

实验八函数的初步应用课前练习

1. void return

2.C

3.A

4.C

5. 7 3

6.C

7. D

8.D

9.A

实验内容

(一)程序改错

1.

仅供学习与交流,如有侵权请联系网站删除谢谢17

精品资料

(1)int fun(int a,int b,int c)(2)if(a+b>c&&b+c>a&&a+c>b)(3)else if(a==b||b==c||a==c) 2.

(1)if(n==1)

(2)c=age(n-1)+2;

(3)printf("%d\n",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)f

(2)return f

(3)fun(n)

仅供学习与交流,如有侵权请联系网站删除谢谢18

精品资料

课后练习

1.C

2.C

3. A

4.D

5.A

6.B

7.B

8.A

9.A

10.C

11.A

12.A

13.B

14.D

15.10,20

16.13 11 12

17.2

18. 3 1

19.-31

20.221

21.22

22.main函数

23. return void

24. void int

实验九函数的其他应用课前练习

1.B

2.A

3.A

4.C

5.D

6.D

7.55

8.C

9.D

仅供学习与交流,如有侵权请联系网站删除谢谢19

精品资料

10.A

实验内容

(一)程序改错

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) x*y

(2)#define f2(a,b) (a)*(b)

(3)#include

2.

(1) 12 48

(2) 12 12

仅供学习与交流,如有侵权请联系网站删除谢谢20

本文来源:https://www.bwwdw.com/article/fkol.html

Top