C语言实验四实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验4:循环结构程序设计
1、使用循环语句完成累乘、图像输出的程序编写。
2、掌握较复杂结构程序的编写。
3、掌握程序调试的方法。
4、编写实验报告。
二、实验内容
1、已知xyz + yzz = 532,其中x、y、z都是数字(0~9),编写一个程序求出x、y、z分别代表什么数字。
2、编写一个程序打印如下对称图形(行数由键盘输入1~9范围的值),例如下面是输入的数字4时的情形:
4444444
33333
222
1
222
33333
4444444
3、学校有近千名学生,在操场上排队,5人一行余2人,7人一行余3人,3人一行余1人,编写一个程序求该校的学生人数。
4、学校某班A、B、C、D四位同学中的一位做了好事不留名,表扬信来了之后,班主任问这四位是谁做了好事,四位回答如下:
A说:不是我。
B说:是C。
C说:是D。
D说:他胡说。
已知三个人说的是真话,一个人说的是假话。请根据这些信息,找出做了好事的人。
三、实验内容
1、已知xyz + yzz = 532,其中x、y、z都是数字(0~9),编写一个程序求出
x、y、z分别代表什么数字。
(1)关键源代码
#include
Void main(void)
{
int x,y,z;
for(x=1;x<6;x++)
for(y=0;y<4:y++)
for(z=0;z<4;z++)
if((x*100+y*10+z)+(y*100+z*10+z)==532)
printf(“x=%d,y=%d,z=%d\n”,x,y,z);
}
(2)运行结果
2、编写一个程序打印如下对称图形(行数由键盘输入1~9范围的值),例如下面是输入的数字4时的情形:
4444444
33333
222
1
222
33333
4444444
(1)关键源代码
#include
void main(void)
{
int i,j,k;
int n;
printf("Enter n(1~9):");
scanf("%d",&n);
for(i=0;i<2*n-1;i++)
{
k=i;
if(i>=n)
k=2*n-2-i;
for(j=0;j printf(" "); for(j=0;j<2*(n-k)-1;j++) printf("%d",n-k); printf("\n"); } } (2)测试数据:4 (3)运行结果: 3、学校有近千名学生,在操场上排队,5人一行余2人,7人一行余3人,3人一行余1人,编写一个程序求该校的学生人数。 (1)关键源代码 #include void main(void) { int n; for(n=900;n<1100;n++) if(n%5==2&&n%7==3&&n%3==1) printf("there are %d students in the ground\n",n); } (2)运行结果 4、学校某班A、B、C、D四位同学中的一位做了好事不留名,表扬信来了之后,班主任问这四位是谁做了好事,四位回答如下: A说:不是我。 B说:是C。 C说:是D。 D说:他胡说。 已知三个人说的是真话,一个人说的是假话。请根据这些信息,找出做了好事的人。 (1)关键源代码 #include int main() { int i,j,A,B,C,D; for(i=0;i<4;i++) {for(j=0;j<4;j++) if(j==i) switch(j) { case 0:A=1;B=0;C=0;D=0;break; case 1:A=0;B=1;C=0;D=0;break; case 2:A=0;B=0;C=1;D=0;break; case 3:A=0;B=0;C=0;D=1;break; default:break; } if(B+C+D==1&&B+C==1&&C+D==1&&A+B+C==1) printf("%c\n",i+'A'); } return 0; } (2)运行结果 四、问题及解决办法 1、由于上课时自己对循环这方面的知识掌握不够好,导致在做实验的时候,浪 费了很多的时间,走了不少弯路。后来是通过看书以及问同学,还有上网查询才解决这个问题。 2、由于对前面符号知识的淡忘,所以在编写程序时,经常想不起用什么符号。 后来通过看书解决了这个问题。 五、实验总结 通过该实验,我对循环语句有了更深的了解。虽然现在如果我要编写较复杂的程序还是比较困难,但是至少对这方面的知识有了更深的认识。还有就是通过这次实验,我也基本掌握了程序调试的方法。总的来说,这次实验我收获颇丰。