- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验解答-7
实验7 循环结构程序设计(二)
7.1 实验目的
1. 学习do循环的使用
2. 理解do循环与while 循环不同之处
3. 学习break,continue在循环中的作用
4. 理解循环的嵌套
7.2 实验预习
1. 了解do循环的语法结构
2. 预习break,continue在循环中的作用
3. 完成实验内容部分的填空及程序编写
7.3 实验内容
1. 写出程序运行的结果,并上机验证。
#include stdio.h
void main(){
int i,j,k=0;
for(i=0;i5;i+=2)j=0; //for循环执行后完毕后, i=6,j=0
do{
k++;
}while(j++i); //循环条件控制循环体执行7次
printf(%d\n,k);
}
输出:7
2. 运行下面程序,查看输出结果。
#include stdio.h
void main(){
int i,j;
for(i=0;i2;i++)
for(j=10;j12;j++)printf(i=%d,j=%d\n,i,j);
}
输出:
i=0, j=10
i=0, j=11
i=1, j=10
i=1, j=11
3. 把下面程序改为do循环结构,要求实现相同的输出。
#include stdio.h
void main(){
int i,k=0;
for(i=0;i10;i+=2){
k+=i;
i++;
printf(%d\n,k);
}
}
改用do循环实现的代码:
#include stdio.h
void main(){
int i=0,k=0;
do {
k+=i;
i+=3;
printf(%d\n,k);
} while (i10);
}
4. 写出下面程序的执行结果,并在机器上验证。
#include stdio.h
void main(){
int i,j;
i=j=1;
for(;i5;i++){
if(i%2==0)continue;
j++;
printf(%d,%d\n,i,j);
}
}
输出:
1, 2
3, 3
5. 写出下面程序的执行结果,并在机器上验证
#include stdio.h
void main(){
int i,j;
i=j=1;
for(;i5;i++){
if(i%2==0)break;;
j++;
printf(%d,%d\n,i,j);
}
}
输出:
1, 2
6. 利用下面公式求π值(注意单项值无限接近1而不是0)。
程序代码如下:
#include stdio.h
#include math.h
void main(){
double pi=2.0,t=sqrt(2);
while (fabs(2/t-1)1.0e-10){
pi=pi*2/t;
t=sqrt(2+t);
}
printf(pi= %.10f\n,pi);
}
7. 有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
程序代码如下:
#include stdio.h
void main()
{
int counter=0; //不重复数字的3位数的总个数
int i, j, k; //i-百位数,j-十位数,k-个位数
int n; //由i,j,k组成的3位数
for (i=1;i=4;i++)
for (j=1;j=4;j++)
for (k=1;k=4;k++)
if (i==j ||i==k ||j==k) continue;
else{
n=100*i+10*j+k;
counter++;
printf(%d\n,n);
}
printf(Counter=%d\n,counter);
}
#
文档评论(0)