当前位置:文档之家› C语言数组与循环结构程序设计实验报告

C语言数组与循环结构程序设计实验报告

实验报告
课程名称程序设计基础
实验项目数组与循环结构程序设计(一)
实验仪器计算机
系别计算机学院
专业
班级/学号
学生姓名
实验日期 2014.12.4 成绩
指导教师
实验三
一、实验目的
(1)熟悉掌握用while语句、do…while语句和for语句实现循环的方法。

(2)掌握在程序设计中用循环的方法实现一些常用算法。

(3)进一步学习调试程序。

二、实验内容
(1)输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。

在得到正确结果后,请修改程序使之能分别统计大小写字母、空格、数字和其他字符的个数。

(2)输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。

例如,153是一个水仙花数,因为153=13+53+33。

(3)猴子吃桃问题。

猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。

第二天早上又将剩下的桃子吃掉一半,又多吃了一个。

以后每天早上都吃了前一天剩下的一半零一个。

到第10天早上想再吃时,就只剩一个桃子了。

求第一天共摘多少个桃子。

在得到正确结果后,修改题目,改为猴子每天吃了前一天剩下的一半零两个。

请修改程序并运行,检查结果是否正确。

三、实验课时
2课时
四、实验步骤(20分)
(1).先分析题目,想一个能达成目标的算法,然后打开vc6.0开始打码,等到完成后先编译看是否有错误,若有则查看软件给出的提示再进行修改,直到成功再运行程序并输入数字检验,看是否正确,不正确则返回代码再修改直到结果正确,最后截图完成实验。

(2).分析题目初步确定算法,然后打开vc6.0开始打码,注意格式,防止犯错误,代码打好后F7查看是否正确,不正确则修改,正确则开始运行,验证输出是否正确,错误则返回修改,否则完成实验。

(3).分析题目初步确定算法,打开VC6.0,新建文件C++SF,输入代码,运行,
记录输出信息,分析原因;按照题目要求,对代码进行修改,继续运行,成功则记录输出信息,进行截屏,完成问答。

五、流程图(20分)
1.
2.
3 .
六、实验心得(20
(1).实验中遇到while((c=getchar())!='\n')不明白他的意思,通过查找资料知道其意思是遇到回车键就输出。

(2).实验中最大的难题就是用怎样的一个算法来算出个十百位的数字,最后通过参阅资料解决,多做练习培养自己算法思维很重要。

(3).实验中使用逆推的思想,由此设计一个while结构算法,完成程序。

七.运行结果截图(15分)
(1).
(2).
(3).
八.C程序源代码(25分)
(1).#include<stdio.h>
int main()
{
char c;
int letters=0,space=0,digit=0,other=0;
printf("请输入一行字符:\n");
while((c=getchar())!='\n')
{
if(c>='a' && c<='z' || c>='A' && c<='Z') letters++;
else if(c==' ')
space++;
else if(c>='0' && c<='9')
digit++;
else
other++;
}
printf("字母数:%d\n空格数:%d\n数字数:%d\n其他字符数:%d\n",letters,space,digit,other);
return 0;
}
(2).
#include<stdio.h>
int main()
{
int i,j,k,n;
printf("水仙花数:");
for(n=100;n<1000;n++)
{
i=n/100;
j=n/10-i*10;
k=n%10;
if(n==i*i*i+j*j*j+k*k*k) printf("%d ",n);
}
printf("\n");
return 0;
}
(3).
1.#include<stdio.h>
int main()
{
int a,b,d;
b=1;
d=9;
while(d>0)
{
a=(b+1)*2;
b=a;
d--;
}
printf("桃子=%d\n",a); return 0;
}
2. #include<stdio.h>
int main()
{
int a,b,d;
b=1;
d=9;
while(d>0)
{
a=(b+2)*2;
b=a;
d--;
}
printf("桃子=%d\n",a); return 0;
}。

相关主题