一、问题及代码
实验1 本月有几天?
/*
* 文件名称:shiyan2.cpp
* 作 者:徐泽超
* 完成日期:2017 年 3月 13 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:计算本月有几天
* 输入描述:输入年份和月份
* 问题描述:
* 程序输出:输出本月有多少天
* 问题分析:先计算月份是几月,若是大月则31天,小月则30天,如果是平月,即二月,则对年份进行判断,闰年29天,平年28天。
* 算法设计:如下
*/
#include<iostream>
using namespace std;
int main()
{
int year,month,num,i,temp=0;
int big[]={1,3,5,7,8,10,12},small[4]={4,6,9,11};
cout<<"请输入年份和月份(中间用空格键隔开,以回车键结束):";
cin >>year>>month;
cout<<"本月有";
if(month!=2)
{
for(i=0;i<4;i++)
{
if(month==small[i])
{
temp=1;
}
}
if(temp==1)
{
cout<<"30";
}
else
{
cout<<"31";
}
}
else
{
if((year%4==0&&year%100!=0)||(year%400==0))
{
cout<<"29";
}
else
{
cout<<"28";
}
}
cout<<"天"<<endl;
return 0;
}
/*
* 文件名称:xinghaotu.cpp
* 作 者:徐泽超
* 完成日期:2017 年 3 月13 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分: 输出由星号‘*’组成的空心三角图形
* 输入描述:输入三角形所占行数
* 问题描述: 输出由星号‘*’组成的空心三角图形
* 程序输出: 由星号‘*’组成的空心三角图形
* 问题分析:略
* 算法设计:略
*/
#include <iostream>
using namespace std;
int main()
{
int i,j,k,m=1,n=1,num;
char a=' ';
cout<<"请输入星号图的大小(星号图所占行数):";
cin>>num;
while(n<=num-1)
{
putchar(a);
n++;
}
cout<<"*"<<endl;
for(i=1;i<num-1;i++)
{
for(j=1;j<=num-i-1;j++)
{
putchar(a);
}
cout<<"*";
for(k=1;k<=2*i-1;k++)
{
putchar(a);
}
cout<<"*"<<endl;
}
while(m<=(2*num-1))
{
cout<<"*";
m++;
}
cout<<endl;
return 0;
}
实验1
1、输入 2004 2
2、输入2010 4
实验2
输入6
三、心得体会
1、对循环结构掌握的不熟练,还需多练习
2、编程前应画结构图,防止思维混乱
四、知识点总结
1、if语句,switch语句,for语句;
2、putchar语句可以简化程序。