求5个C语言编程题

一 不高兴的津津
Description
津津上初中了。妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班。另外每周妈妈还会送她去学习朗诵、舞蹈和钢琴。但是津津如果一天上课超过八个小时就会不高兴,而且上得越久就会越不高兴。假设津津不会因为其它事不高兴,并且她的不高兴不会持续到第二天。请你帮忙检查一下津津下周的日程安排,看看下周她会不会不高兴;如果会的话,哪天最不高兴。
二 他的年龄是多少?
Description
有n个人围坐一起,问第n个人多大年纪,他说比n-1个人大2岁;问第n-1个人,他说比第n-2个人大2岁;依次,……;问第2个人,他说比第1个人大2岁。第1个人说自己10岁,现要你编程实现第n个人多大年纪。
请用递归实现。
三 逆序数字
Description
编写一个函数,接收一个整数值,返回这个数中数字逆序后的结果值。例如,给定数7631,函数返回1367.
四 猴子吃桃
Description
猴子第一天摘下若干桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第n天早上想再吃时,见只剩一个桃子了。编程求第一天至少摘下多少桃子。
五 简单密码
Description
Julius Caesar曾经使用过一种很简单的密码。对于明文中的每个字符,将它用它字母表中后5位对应的字符来代替,这样就得到了密文。比如字符A用F来代替。如下是密文和明文中字符的对应关系。

密文
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

明文
V W X Y Z A B C D E F G H I J K L M N O P Q R S T U

你的任务是对给定的密文进行解密得到明文。

你需要注意的是,密文中出现的字母都是大写字母。密文中也包括非字母的字符,对这些字符不用进行解码
在线等待..二和四还没有做出来呢...

第1个回答  2008-12-23
三。

#include<stdio.h>
int i;
void func(int *n)
{
int j;
i=*n%10;
*n=*n/10;
j=i;
printf("%d",j);
if(*n>0)func(n);
}
int main(void)
{
int n;
printf("请输入一个整形数字:");
scanf("%d",&n);
func(&n);
return 0;
}

五。
#include<stdio.h>
void main()
{
char str[100];
int i=0;
printf("请输入秘文:");
gets(str);
while(str[i]!='\0')
{
if(str[i]>=70&&str[i]<=90)
{
str[i]=str[i]-5;
}
if (str[i]==65)
str[i]=86;
if(str[i]==66)
str[i]=87;
if(str[i]==67)
str[i]=88;
if(str[i]==68)
str[i]=89;
if(str[i]==69)
str[i]=90;
i++;
}
printf("明文:\n");
printf("%s",str);
}

四。
#include<stdio.h>
int N; //桃子数
int PeachNum(int *n)
{
if(*n==1)
return 1;
(*n)--;
N=2*(PeachNum(n)+1);
return N;
}
void main()
{
int n; //n是天数
printf("请输入天数n:");
scanf("%d",&n);
PeachNum(&n);
printf("%d",N);
}
第2个回答  2008-12-23
1、class jinJin
{
public jinJin(float s1,float s2,float s3)
{
LS=s1;
sing=s2;
dance=s3
}
public float sum()
{
return LS+sing+dance;
}
protect
float LS;
float Sing;
float Dance;

}
void main()
{
jinJin [7] temp;
for (int i=0;i<7;i++)
{
float LS,sing,dance;
cin>>LS>>sing>>dance;
temp[i]=jinJin(LS,sing,dance);
}
float maxest;
int k;
for(int i=0;i<7;i++)
{
if (maxest<temp[i].sum())
{
maxest=temp[i].sum;
k=i;
}
}
if(maxest>8)
{
cout>>k+1;
}
}
2、int getage(n)
{
if(n=1)
return 10;
return getage(n-1)+2;
}
第3个回答  2009-01-05
二:
//Thanks for 无情公主
#include<stdio.h>
int age(int N);
void main()
{
int N;
printf("请输入此人的编号:\n");
scanf("%d",&N);
printf("据称此人今年%d岁\n",age(N));
}
int age(int N)
{
if(N==1)
return 10;
else
return (2+age(N-1));
}
第4个回答  2008-12-23
都是很简单的题目啊本回答被提问者采纳
第5个回答  2008-12-23
晕了,直接在里面写的代码写完了不小心按了个F5。。。
~~~~~~~~~~~~~~`
2.
int func(int n)
{
static int year = 0;
if(n == 1)
return (year + 10);
else
{
year += 2;
func(n - 1);
}
}

4.
#define DAY 5 //假设为5天
void main(void)
{
int i = 0, number = 0;;
for(i = 0; i < DAY; i++)
{
number = ((number + 1) * 2);
}
printf("第一天最少要摘%d个\n", number);
}
相似回答