C语言 经典小例子
来源:互联网 发布:崩坏3rd网络连接失败 编辑:程序博客网 时间:2024/04/29 16:42
EG1:贪吃的猴子
有一只猴子,第一天摘了若干个桃子 ,当即吃了一半,但还觉得不过瘾 ,就又多吃了一个。第 2 天早上又将剩下的桃子吃掉一半,还是觉得不过瘾,就又多吃了两个。以后每天早上都吃了前一天剩下的一半加天数个(例如,第 5 天吃了前一天剩下的一般加 5 个)。到第 n天早上再想吃的时候,就只剩下一个桃子了。
#include<stdio.h>int main(){int n,x=1;scanf("%d",&n);for(n;n>0;n--)x=2*(n-1)+2*x;x=x/2;if(x>1)printf("The monkey got %d peachs in first day.\n",x);else if(x==1)printf("The monkey got %d peach in first day.\n",x);return 0;}
EG2:判断三角形的形状
输入三角型的三条边,判断三角形的形状。假设输入的三边边长均>0。
#include<stdio.h>void main(){int a,b,c;scanf("%d%d%d",&a,&b,&c);if(a+b<c||b+c<a||c+a<b)printf("non-triangle.\n");else if(a==b&&b==c)printf("equilateral triangle.\n");else if(a==b||b==c||c==a)printf("isoceles triangle.\n");else printf("triangle.\n");}
EG3:黑色星期五
在西方,星期五和数字 13 都代表着坏运气,两个不幸的个体最后结合成超级不幸的一天。所以,不管哪个月的十三日又恰逢星期五就叫“黑色星期五”。
输入:年份。
输出:判断该年是否包含黑色星期五,如包含,给出具体日期。
#include<stdio.h>typedef struct{int month;int day;}Data;int main(){Data data[10];int a[13]={0,12,43,71,102,132,163,193,224,255,285,316,346};int b[13]={0,12,43,72,103,133,164,194,225,256,286,317,347};int n=0,i,year;scanf("%d",&year);if(((year%4==0)&&(year&100!=0))||(year%400==0)){for(i=1;i<=12;i++){if((year*365+(year-1)/4-year/100+year/400+b[i])&7==5){data[n].month=i;data[n].day=13;n++;}}}else{for(i=1;i<=12;i++){if((year*365+year/4-year/100+year/400+a[i])%7==5){data[n].month=i;data[n].day=13;n++;}}}if(n==1){printf("There is %d Black Friday in year %d.\nIt is:\n",n,year);printf("%d/%d/%d\n",year,data[0].month,data[0].day);}else{printf("There are %d Black Fridays in year %d.\nThey are:\n",n,year);for(i=0;i<n;i++)printf("%d/%d/%d\n",year,data[i].month,data[i].day);}return 0;}
EG4:百马百担
有 100 匹马,驮 100 担货,其中大马驮 3 担,中马驮 2 担,两匹小马驮 1 担。
输入:无;
输出:大、中、小马的个数,用逗号分隔。例如:2,30,68
#include<stdio.h>int main(){int i,j,k;for(i=1;i<=100;i++){for(j=1;j<=100-i;j++){k=100-i-j;if((3*i+2*j+k/2.0)==100)printf("%d,%d,%d\n",i,j,k);}}return 0;}
EG5:零钱换整钱
小明去银行存钱,拿了一堆硬币。已知 1 角的硬币厚度为 1.8mm , 5 角的硬币厚1.5mm , 1 元的硬币为 2.0mm 。小明将 1 角的硬币放成一摞,将 5 角的硬币硬币放成一摞,将 1 元的硬币放成一摞,发现 3 摞硬币一样高。银行正好把这些硬币换成若干张面值为 10 元的纸币。问小明至少带了多少钱的硬币(元为单位),每种面值的硬币有多少个?
#include<stdio.h>void main(){int yijiao;int wujiao;int yiyuan;int sum;for(yiyuan=0;yiyuan<100;yiyuan++){for(wujiao=0;wujiao<100;wujiao++){for(yijiao=0;yijiao<100;yijiao++){sum=yijiao+wujiao*5+yiyuan*10;if((sum>=100)&&(sum%100==0)&&(18*yijiao==15*wujiao)&&(15*wujiao==20*yiyuan)){printf("%d,%d,%d,%d\n",yijiao,wujiao,yiyuan,sum/10);break;}}}}}
总结:
考试中,总结中,加油。
0 0
- C语言 经典小例子
- C语言argc和argv经典小例子如何运行
- C语言小例子
- c 语言线程小例子
- C语言经典小程序
- C语言操作mysql经典例子
- C语言操作MYSQL小例子
- C语言中dlsym的小例子
- C语言操作MYSQL小例子
- C语言访问webservice小例子
- C语言中的经典小程序1
- C语言中的经典小程序2
- C语言中的经典小程序3
- C语言中的经典小程序4
- C语言中的经典小程序5
- C语言中的经典小程序6
- c语言10个经典小程序
- c语言10个经典小程序
- Cocos3d3.10版本配置打包环境要注意的问题和打包失败常见问题的解决办法
- 爱奇艺电视果连不到WiFi的解决办法
- 迷瘴
- 阿里大鱼短信平台使用(Java)
- 关于python的机器学习与数据挖掘的相关的包
- C语言 经典小例子
- java的锁池和等待池wait notify notifyall
- windows下如何安装pyquery
- 【树莓派开发-Linux】在linux下挂载ISO镜像文件
- AsyncTask用法参数举例
- 【Codeforces Beta Round #36】Codeforces 36E Two Paths
- 二级指针
- 使用QSQLite获取记录数目
- iOS应用之间的跳转,看这篇就够了