问题 1004: 母牛的故事
时间限制: 1Sec 内存限制: 128MB 提交: 8766 解决: 2195
有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?
输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0<n<55),n的含义如题目中描述。
n=0表示输入数据的结束,不做处理。
对于每个测试实例,输出在第n年的时候母牛的数量。
每个输出占一行。
2 4 5 0
2 4
6
代码如下:
#include<stdio.h>
int main(){
int i,n,a[55];
while(scanf("%d",&n)){
a[1]=1;
a[2]=2;
a[3]=3;
if(n==0)
break;
if(n==1){
printf("%d",a[1]);
}
else if(n==2){
printf("%d",a[2]);
}
else if(n==3){
printf("%d",a[3]):
}
else{
for(i=4;i<=n;i++){
a[i]=a[i-1]+a[i-3];
}
printf("%d",a[n]);
}
}
return 0;
}
把相应数字转换为ASCII码
#include<stdio.h>
int main(){
int i=0;num[50],leng;
while(scanf("%d",&num[i])!=EOF){
i++;}
leng=i;
for(i=0;i<=leng;i++){
printf("%c",num[i]);
return 0;
}
用筛法求素数
代码如下:
#include<stdio.h>
int main(){
int i,N;
scanf("%d",&N);
for(i=2;i<N;i++){
change(i);}
return 0;
}
void change(){
int i;
for(i=2;i<=n;i++){
if(n%i==0)break;
if(i==n)
printf("%d",n);
}
字符逆序
#include<stdio.h>
#include<string.h>
int main(){
int i;
char a[101];
gets(a);
for(i=strlen(a)-1;i>=0;i--)
putchar(a);
}
字符串的输入输出
#include<stdio.h>
#include<string.h>
int main(){
char a[100];
int n;
scanf("%d",&n);
getchar();
for(int i=0;i<n;i++){
gets(a);puts(a);printf("\n");}
while(scanf("%s",a)!=EOF){
printf("%s\n",a);
printf("\n");}
return 0;
}
the 3n+1 problem