上机目的:初步体验分支结构和循环结构的程序设计
上机内容:(1)求两个正整数的正差值;(2)输出四个整数中的最大值;(3)输出各大式星号图。
项目1:分支结构程序设计体验
问题:给定两个正整数,求出两数的正差值并输出。
样例输入 样例输出
7 10 3
12 7 5
提示:“正差值”意味着无论这两数孰大孰小,输出的差值为非负数。可以自行加入些“请输入……”,“……是:”之类的提示,让你的程序有“友好”的用户界面。
#include <iostream>
using namespace std;
int main( )
{
int a,b,c;
cout<<"请输入a、b的值:";
while(1){
cin>>a>>b;
c = a - b;
cout<<a<<" 和 "<<b<< " 之间的正差值是: ";
if(c>0)
cout<<c;
else
cout<<-c;
cout<<"\n";
cout<<"请输入a、b的值:";
}
return 0;
}
项目2:输入4个整数,输出其中的最大值。
#include <iostream>
using namespace std;
int main( )
{
int a,b,c,d;
while(1){
cout<<"请输入a、b、c、d的值:";
cin>>a>>b>>c>>d;
int t;
t = a;
if(b > t)
t = b;
if(c > t)
t = c;
if(d > t)
t = d;
cout<<"a,b,c,d四个数中最大值是"<<t<<endl;
}
return 0;
}
项目3:用星号图体验循环结构程序设计
#include <iostream>
using namespace std;
int main( )
{
int i,j,n=6;
//输出第一行:n-1个空格和1个星号并换行
for(j=1; j<=n-1; ++j) //输出n-i个空格
cout<<" ";
cout<<"*"<<endl;
//再输出中间的n-2行
for(i=2;i<=n-1;++i) //一共要输出n-2行
{
//输出第i行
for(j=1; j<=n-i; ++j) //输出n-i个空格
cout<<" ";
cout<<"*"; //再输出一个星号
for(j=1; j<=2*i-3; ++j) //然后输出2*i-3个空格
cout<<" ";
cout<<"*"<<endl; //输出一个星号后本行结束,换行
}
//输出最后一行:2*n-1个星号
for(j=1; j<=2*n-1; ++j)
cout<<"*";
cout<<endl;
return 0;
}