《高级语言程序设计》实验报告
姓名
学号
年级
专业
计算机科学与技术
班级
日期
2012/11/19
实验内容
输入一行字符,分别统计出其中的英文字符(大写字母、小写字母)、空格、数字和其他字符的个数
实验环境
codeblocks10.05。
实验目的
(1) 熟悉掌握用while语句、do-while语句和for语句实现循环的方法。
(2) 掌握在程序设计中用循环的方法实现一些常用算法。
(3)进一步学习调试程序
开始
实验步骤:
1) 实验流程图:
K=15d5 SW /*d-* ,figure_num=0,letter_num=0,space_num=0,other_num=0;
K<=’z’&&k>=’a’||k<=’Z’&&k>=’A’
结束
K<=’9’&&k>=’0’
Y
数字个数=5,字母个数=7,空格个数=2,其他个数=1
figure_num+=1;
letter_num+=1
K=’空格’
space_num+=1;
other_num+=1;
K=’\n’
2)程序清单:
int main()
{char k;int figure_num=0,letter_num=0,space_num=0,other_num=0;
printf("请输入一行字符\n");
do
{k=getchar();
if(k<=9&&k>=0)
figure_num+=1;
else
if((k<=z&&k>=a)||(k<=Z&&k>=A))
letter_num+=1;
else
if(k== )
space_num+=1;
else
if(k==\n)
break;
else
other_num+=1;
}
while(k!=\n);
printf("数字个数=%d,字母个数=%d,空格个数=%d,其他个数=%d\n",figure_num,letter_num,space_num,other_num);
return 0;
}
3)运行结果:
4)实验分析及经验:while 和do while虽然可以互相替换,但是要考虑到第二个语句是先执行后判断,无论判断是否成立,循环体已经执行了一次程序,所以在实验过程中出了少许差错,通过仔细排查得知,假设我最后按了enter键,虽然条件不成立,但是循环体仍然执行了最后一次,导致other_num再+1,所以输出结果总是多了一,因此我在最后一个if语句中,写入,最后一次键入的是enter,则终止循环,跳出循环体,所以 other_num就不会+1,程序运行正确。
展开阅读全文