各种小程序:(运动员名次与谁是凶手等)
2016-07-07 19:23
766 查看
/*5位运动员参加10米台跳水比赛,有人让他们预测比赛结果 A选手说:B第一,我第三 B选手说:我第二,E第四 C选手说:我第一,D第二 D选手说:C最后,我第三 E选手说:我第四,A第一 比赛结束后,每位选手都说对了一半,请编程确定比赛的名次*/ #include <stdio.h> #include <stdlib.h> int main() { int a=0; int b=0; int c=0; int d=0; int e=0; int num=0; for(a=1;a<=5;a++) { for(b=1;b<=5;b++) { for(c=1;c<=5;c++) { for(d=1;d<=5;d++) { for(e=1;e<=5;e++) { num=0; if(((b==1)+(a==3)==1)&& ((b==2)+(e==4)==1)&& ((c==1)+(d==2)==1)&& ((c==5)+(d==3)==1)&& ((e==4)+(a==1)==1)) {//将a、b、c、d、e的名次放进一个数中 num|=(1<<(a-1)); num|=(1<<(b-1)); num|=(1<<(c-1)); num|=(1<<(d-1)); num|=(1<<(e-1)); while(num)//判断名次是否连续,连续则输出 { if(num%2==0) { break; } num=num>>1; } if(num==0) { printf("a=%d b=%d c=%d d=%d e=%d\n",a,b,c,d,e); } } } } } } } system("pause"); return 0; }
/*日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为四个嫌疑犯
的一个,以下为四个嫌疑犯的供词:
A说:不是我
B说:是C
C说:是D
D说:C在胡说
已知3个人说了真话,1个人说了假话,现在请根据这些信息,写一个程序
确定谁是凶手*/
#include <stdio.h>
#include <stdlib.h>
int main()
{
int killer=0;
for(killer='A';killer<='D';killer++)
{
if((killer!='A')+(killer=='C')+(killer=='D')+(killer!='D')==3)
{
printf("凶手killer=%c\n",killer);
break;
}
}
system("pause");
return 0;
}
简单小程序
数组初始化、清空、逆置
#include <stdio.h>
#include <stdlib.h>
void init(int arr[],int sz)
{
int i=0;
for(i=0;i<sz;i++)
{
arr[i]=i;
}
for(i=0;i<sz;i++)
{
printf("%d ",arr[i]);
}
printf("\n");
}
void empty(int arr[],int sz)
{
int i=0;
for(i=0;i<sz;i++)
{
arr[i]=0;
}
for(i=0;i<sz;i++)
{
printf("%d ",arr[i]);
}
printf("\n");
}
void reverse(int arr[],int sz)
{
int i=0;
int len=sz-1;
for(i=0;i<sz/2;i++)
{
int tmp=arr[i];
arr[i]=arr[len];
arr[len]=tmp;
len--;
}
for(i=0;i<sz;i++)
{
printf("%d ",arr[i]);
}
printf("\n");
}
int main()
{
int arr[10];
int sz=sizeof(arr)/sizeof(arr[0]);
init(arr,sz);
reverse(arr,sz);
empty(arr,sz);
system("pause");
return 0;
}
乘法表
#include <stdio.h>
#include <stdlib.h>
void Print_Table(int row)
{
int i=0;
for(i=1;i<=row;i++)
{
int j=0;
for(j=1;j<=i;j++)
{
printf("%2d*%2d=%2d ",j,i,i*j);
}
printf("\n");
}
}
int main()
{
int row=0;
printf("请输入指定的行数:row=");
scanf("%d",&row);
Print_Table(row);
system("pause");
return 0;
}
两个数交换
#include <stdio.h>
#include <stdlib.h>
void Swap(int *pa,int *pb)
{
*pa=*pa+*pb;
*pb=*pa-*pb;
*pa=*pa-*pb;
}
int main()
{
int a=23;
int b=35;
printf("a=%d b=%d\n",a,b);
Swap(&a,&b);
printf("a=%d b=%d\n",a,b);
system("pause");
return 0;
}
判断闰年
#include <stdio.h>
#include <stdlib.h>
int Judge_Learyear(int year)
{
if(((year%4==0)&&(year%100!=0))||(year%400==0))
{
return 1;
}
return -1;
}
int main()
{
int year=0;
int ret=0;
printf("请输入年份:year=");
scanf("%d",&year);
ret=Judge_Learyear(year);
if(ret!=1)
{
printf("%d不是闰年\n",year);
}
else
{
printf("%d是闰年\n",year);
}
system("pause");
return 0;
}
判断素数
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int Is_Prime(int num)
{
int i=0;
for(i=2;i<=sqrt((double)num);i++)
{
if(num%i==0)
{
return -1;
}
}
return 1;
}
int main()
{
int num=0;
int ret=0;
printf("请输入一个数:num=");
scanf("%d",&num);
ret=Is_Prime(num);
if(ret!=1)
{
printf("%d不是素数\n",num);
}
else
{
printf("%d是素数\n",num);
}
system("pause");
return 0;
}
相关文章推荐
- 微信服务号支付 xml格式错误
- C#.NET ,微信退款证书
- 微信分享-js代码
- 微信客服消息实现被动回复
- 微信JSSDK开发,调用微信扫一扫 JAVA & jsp前端 & js实现
- 微信开放平台 获取 component_verify_ticket
- 引领移动协同需求Cnskype结合微信企业号推出企业办公、通讯整合方案
- 仿微信摇一摇 ios
- 微信公众平台开发
- 使用ShareSDK实现分享功能,微信分享 提示“分享操作正在后台运行” 然后闪了一下屏幕
- Android 分享功能之 微信 图片分享
- 关于安卓微信支付提示未知错误,而IOS正常的处理问题
- WordPress中文插件 Erphpdown vip会员+推广提成+收费下载/查看内容+前端个人中心 银联/支付宝/微信支付/财付通/贝宝paypal[更新至v9.6.1]
- 微信开发中遇到的access_token坑
- Android仿微信多图片选择,拍照等,适合快速导入到自己项目中
- 微信登录和微信充值
- Android微信支付支付失败-1等问题-脱坑指南
- 引领移动协同需求Cnskype结合微信企业号推出企业办公、通讯整合方案
- 微信公众平台开发(58)自定义菜单
- 微信js SDK接口