C语言程序设计实验报告4.docx
《C语言程序设计实验报告4.docx》由会员分享,可在线阅读,更多相关《C语言程序设计实验报告4.docx(12页珍藏版)》请在冰豆网上搜索。
C语言程序设计实验报告4
计算机基础课实验报告
题 目:
《C语言程序设计》综合实训
院 系:
电气及自动化工程学院
专业年级:
电气工程及其自动化2011025班
学生姓名:
吴天一 学号:
20111331
2011年 11 月 16 日
实验五循环控制(控制结构综合)
一、实验目的
1、掌握用while语句,do-while语句和for语句实现循环的方法。
2、掌握在程序设计中用循环的方法实现一些常用算法(如穷举、迭代、递推等)。
3、进一步学习调试程序的技巧。
二、实验内容和步骤
1、给定程序的功能是:
从键盘上输入两个正整数,求它们的最大公约数。
例如:
如果从键盘上输入24,36,程序的输出应为:
maxis:
12。
程序有两个空需要补充完整。
请将程序中的和删除后,在相应的位置填入正确答案并调试直到得到正确结果为止。
注意:
不要随意改动程序,不得增行或删行,也不得更改程序的结构!
在运行时,输入的值m>n,观察结果是否正确。
再输入时,使m修改程序,不论m和n为何值(包括负整数),都能得到正确结果。
在此基础上,输入两个正整数m和n,求它们的最小公倍数。
在此基础上,输入两个正整数m和n,求它们的最小公倍数:
2、打印出所有的“水仙花”数,“水仙花”数是指一个3位数,其各位数字的立方之和等于该数本身。
3、以下给定程序的功能是:
输出1~1000之间的所有完数,并输出每一个完数的所有因子。
所谓完数,就是指一个正整数,它的各因数之和等于其自身。
例如,28的因数为1、2、4、7、14,28=1+2+4+7+14,因此,28是一个完数。
程序中有两处错误,错误都在提示行:
/**********found***********/的下面一行。
请改正程序中的错误,使它能得出正确的结果。
注意:
程序中的其它地方不要随意改动,不得增行或删行,也不得更改程序的结构!
4、编写一个选票统计程序。
四个候选人分别用字母A、B、C、D表示,现有20个人进行投票,每人只能选A、B、C、D四人中的一人。
提示:
参考下面的N-S图
5、输入一个4位数,要求逆序打印每一位数字,并打印逆序整数,要求使用循环完成。
请考虑:
如不限定几位数(即只要不超过整数范围),应如何修改程序。
#include
#include
intmain()
{intx,a,b,c,d,e,f,g,h;
scanf("%d",&x);
while(1000<=x<=9999)
{a=x%10;
b=x-a;
c=b%100;
d=c/10;
e=x-a-c;
f=e%1000;
g=f/100;
h=(x-a-c-f)/1000;
printf("%d%d%d%d\n",a,d,g,h);
scanf("%d",&x);
}
return0;
}
6、打印1!
+2!
+3!
+……+20!
之和。
7、打印数列2/1,3/2,5/3,8/5,13/8,21/13……的前20项之和。
8、以下给定程序的功能是:
打印输出以下图形
*
***
*****
*******
*********
程序中有两处错误,错误都在提示行:
/**********found***********/的下面一行。
请改正程序中的错误,使它能得出正确的结果。
注意:
程序中的其它地方不要随意改动,不得增行或删行,也不得更改程序的结构!
9、以下给定程序的功能是:
从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在t中。
例如,当s中的数为:
7654321时,t中的数为:
7531.
程序中有两处错误,错误都在提示行:
/**********found***********/的下面一行。
请改正程序中的错误,使它能得出正确的结果。
注意:
程序中的其它地方不要随意改动,不得增行或删行,也不得更改程序的结构!