1、编写程序:读入一个在字母C和X之间的字符,打印出该字母在中间的相邻五个字母。
如:输入F,则输出DEFGH.
函数原型:void func(char ch)
void func(char ch)
{
printf("%c %c %c %c %c",ch-2,ch-1,ch,ch+1,ch+2);
return;
}
2、一个球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第十次反弹多高。
#include<stdio.h>
int main(void)
{
int i;
float len = 100 ;
float high = 100;
for( i=2 ; i<11 ; i++ )
{
high /= 2;
len += high * 2;
}
printf("第十次落地共经过%f米\n反弹%f米高\n",len,high/2);
} //此时是第9次反弹,所以要除以2
3、编写一个函数,要求输入年月日时分秒,输出该年月日时分秒的下一秒。如输入2004年12月31日23时59分59秒,则输出2005年1月1日0时0分0秒。
函数原型:PS:故意这么写的,别给乱换
void show_time(int *year, int *month, int *date, int *hour, int *minute, int *second)
void show_time(int *year , int *month , int *day , int *hour , int *minute , int *second)
{
int i = 0;//i来表示是否进位
if((*second)+1 > 59)
{
++*minute;
*second = 0;
i = 1;
}
else
++*second;
if( i )
{
if((*minute) > 59)
{
++*hour;
*minute = 0;
i = 1;
}
else
i = 0;
}
if( i )
{
if((*hour) > 23)
{
++*day;
*hour = 0;
i = 1;
}
else
i = 0;
}
if( i )
{
if(*month == 4||*month == 6||*month == 9||*month == 11)
{
if(*day > 30)
{
*month++;
*day = 1;
i = 1;
}
else
i=0;
}
else if(*month == 2)
{
if( *year % 4 == 0 && *year % 100 != 0)
{
if(*day > 29)
{
*month++;
*day = 1;
i = 1;
}
else
i = 0;
}
else
{
if(*day > 28)
{
*month++;
*day = 1;
i = 1;
}
else
i = 0;
}
}
else
{
if(*day > 31)
{
*month++;
*day = 1;
i = 1;
}
else
i = 0;
}
}
if(i)
{
if(*month > 12)
{
*year++;
*month = 1;
i = 1;
}
else
i = 0;
}
printf("下一秒的时间是:%d年%d月%d日%d时%d分%d秒\n",*year,*month,*day,*hour,*minute,*second);
}