C语言程序设计实验指导上交大课前练习改错完善程序课后练习参考答案10修改Wo.docx
- 文档编号:7122981
- 上传时间:2023-01-20
- 格式:DOCX
- 页数:33
- 大小:24.58KB
C语言程序设计实验指导上交大课前练习改错完善程序课后练习参考答案10修改Wo.docx
《C语言程序设计实验指导上交大课前练习改错完善程序课后练习参考答案10修改Wo.docx》由会员分享,可在线阅读,更多相关《C语言程序设计实验指导上交大课前练习改错完善程序课后练习参考答案10修改Wo.docx(33页珍藏版)》请在冰豆网上搜索。
C语言程序设计实验指导上交大课前练习改错完善程序课后练习参考答案10修改Wo
实验一VisualC++集成环境
实验内容
(一)程序改错
1.
(1)无法运行
(2)将第二个C程序重新存放到另一个工程文件中
(3)同一个工程文件只能有一个main函数
2.
(1)/*一个简单的程序*/
(2)voidmain()
(3)}
3.
(1)inta,b,c;
(2)a=2;
(3)c=a*b;
(二)完善程序
1.
(1)year
(2)month
(3)day
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.208700
2.Abs3Class_elsesummy_class、
3blocka+bforfun(4)a-b
3.B
4.D
5.A
6.C
7.D
8.B
实验内容
(一)程序改错
1.
(1)intx1,x2,x3,x4;
(2)scanf("%d,%d",&a,&b);
(3)c=x4*1000+x2*100+x3*10+x1;
2.
程序1:
①22
2errorC2065:
'a1':
undeclaredidentifier
变量a1没有定义
sum=a+b+c
③1
errorC2146:
syntaxerror:
missing';'beforeidentifier'printf'
printf语句之前缺少分号
sum=a+b+c;
④0error(s),0warning(s)
⑤a=1b=3c=2sum=6
⑥语句以分号结束;变量要先定义后使用。
程序2:
①22
②errorC2065:
'sum':
undeclaredidentifier
变量sum没有定义
intsum=a+b;
1
errorC2086:
'c':
redefinition
变量c重复定义
c=a+b+sum;
③a=1b=3sum=8
④在同一个函数体内,变量要先定义后使用,但不能重复定义
程序3:
①1
errorC2106:
'=':
leftoperandmustbel-value
赋值符号左边参数错误
c=a+b;
②c=4
③赋值符号左边只能是变量,不能是常量或表达式
3.
(1)t=a;
(2)a=b;;
(3)printf("a=%d\tb=%d\n",a,b);
(二)完善程序
1.
(1)intn
(2)”%d”,&n
(3)s
2.
(1)floats
(2)(float)a/b
(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(回车)
实验三if选择结构语句
课前练习
1.90
2.110
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.103040
7.C
8.A
9.D
10.A
实验内容
(一)程序改错
1.
(1)scanf("%d",&t);
(2)if(t%5==0&&t%7==0)
(3)else
2.
(1)chary;
(2)if(x==0)
(3)printf("%c\n",y);
3.
(1)if(x==m)
(2){printf("Wrong\n");
(3)printf("Toolow\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
课后练习
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.411
2.
if((k==1)||(k==2)
printf("a\n");
elseif((k==3)||(k==4)||(k==5))
printf("b\n");
else
printf("c\n");
3.
switch(x)
{
case1:
case2:
case3:
printf("x\n");break;
case19:
case20:
case21:
printf("y\n");break;
default:
printf("z\n");
}
实验内容
(一)程序改错
1.
(1)switch(x)
(2)case4:
(3)default:
2.
(1)a=s/250;
(2)case0:
d=0;break;
(3)default:
d=15;
3.
(1)elsep=1;
(2)a=num/1000;
(3)num%10
(二)完善程序
1.
(1)grade/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
4.C
5.A
6.A
7.C
实验内容
(一)程序改错
1.
(1)longk=1;
(2)num/=10;
(3)while(num);
2.
(1)intm=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() (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 实验内容 (一)程序改错 1. (1)intsum=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)inti,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++ 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.66 7.8 8.B 实验内容 (一)程序改错 1. (1)inti,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; 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.91 9.107 10.x=16y=8 实验八函数的初步应用 课前练习 1.voidreturn 2.C 3.A 4.C 5.73 6.C 7.D 8.D 9.A 实验内容 (一)程序改错 1. (1)intfun(inta,intb,intc) (2)if(a+b>c&&b+c>a&&a+c>b) (3)elseif(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)return0 (3)f(i+100)&&f(i+168) 2. (1)x (2)s1+s2+s3==15 (3)t++ 3. (1)f (2)returnf (3)fun(n) 课后练习 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.131112 17.2 18.31 19.-31 20.221 21.22 22.main函数 23.returnvoid 24.voidint 实验九函数的其他应用 课前练习 1.B 2.A 3.A 4.C 5.D 6.D 7.55 8.C 9.D 10.A 实验内容 (一)程序改错 1. (1)#defineSWAP(x,y)temp=x;x=y;y=temp (2)inta,b,temp; (3)SWAP(a,b); 2. (1)#defineDIV(m)(m)%3==0 (2)scanf("%d",&m); (3)if(DIV(m)) 3. (1)switch(n%10) (2)case1: c1++;break; (3)case2: c2++;break; (二)完善程序 1. (1)#definef1(x,y)x*y (2)#definef2(a,b)(a)*(b) (3)#include 2. (1)1248 (2)1212 3. (1)23 1385 23 15105 23 (2)略 课后习题 1.C 2.C 3.A 4.C 5.D 6.A 7.A 8.13 9.110 10.9 11.40 12.10 13.27 14.auto 15.6720 16.48 17.12 18.5,25 19.6 20.3 实验十一维数组 课前练习 1-3.BDD 4.248 5.B 6.intss[s]; 7.3715 8.654,321 实验内容 (一)程序改错 1. (1)scanf("%f",a);改为scanf("%f",&a); (2)max=min=avg=a[1];改为max=min=avg=a[0];
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 实验 指导 上交 大课 练习 改错 完善 程序 课后 参考答案 10 修改 Wo
![提示](https://static.bdocx.com/images/bang_tan.gif)