韩信点兵c语言编程
发布时间: 2023-04-25 21:28:50
你的算法根本就不能得到结果,计算机是死的,不像人有思维,所以你只能一个个数去试,用循环实现:
int f(){
int x=10;//你可以从1开始,按最后一个分析,至少有10人
while(1)
if(x%5==1&&x%6==5&&x%7==4&&x%11==10)break;
else x++;
return x;
}
int main(void)
{
int x;
x=f();
printf("%d\n",x);
return 0;
}
Ⅱ c语言题目,韩信点兵
代码如下,盼有所帮助:
#include<stdio.h>
intmain()
{
intiStart=0,iEnd=0,iCount=0,index=0;
printf("请输入两个整数(用逗号隔开):");
scanf("%d,%d",&iStart,&iEnd);
index=iStart<=iEnd?iStart:iEnd;
iEnd=iStart>=iEnd?iStart:iEnd;
for(;index<=iEnd;++index)
{
if((2==index%3)&&(3==index%5)&&(2==index%7))
{
printf("%d",index);
++iCount;
if(0==iCount%10)printf(" ");
}
}
printf(" 共找到%d个符合条件的数。 ",iCount);
return0;
}
Ⅲ 请问韩信点兵用c语言怎么编写啊
用枚举法即可,在最大带兵范围内循环计算,直至找到合适的数。
题主的具体题目是什么?我这里先按最核心的内容编写代码吧。
题目:韩信带兵1500人,战死大约400-500,剩余兵力,3人一排多2人,5人一排多4人,7人一排多6人,求韩信剩余多少兵力。
#include<stdio.h>
intmain(void){
intn;
for(n=1000;n<1100;n++)/*战死大约400-500,循环范围即在1000-1100之间*/
if((n%3==2)&&(n%5==4)&&(n%7==6))/*循环找寻某数符合除3余2且除5余4且除7余6*/
printf("韩信剩余兵力为%d人!",n);
getch();
return0;
}
运行结果
Ⅳ c语言——韩信点兵
#include<stdio.h>
main()
{
int n=900;
while(n<1100)
{ if(n%3==1&&n%5==1&&n%7==1)
{printf("%d\n",n);break;}
else n++;
}
} 最后等于946
Ⅳ 韩信点兵(c语言)
你完全没有按照题目要求做。
#include<stdio.h>
voidmain(){
longlongi,A,B,C,D,E,F,G,H,a,b,c,d,e,f,g,h;
scanf("%lld%lld%lld%lld%lld%lld%lld%lld%lld%lld%lld%lld%lld%lld%lld%lld",&A,&B,&C,&D,&E,&F,&G,&H,&a,&b,&c,&d,&e,&f,&g,&h);
for(i=A;;i++)
if(i%A==a&&i%B==b&&i%C==c&&i%D==d&&i%E==e&&i%F==f&&i%G==g&&i%H==h)
{printf("%lld",i);break;}
}
运行示例:
Ⅵ c语言韩信点兵
#include"stdio.h"
voidmain()
{
intnum1,num2;
inti,count=0;
printf("请输出两个整数:");
scanf("%d%d",&num1,&num2);
for(i=num1;i<=num2;i++)
{
if(i%3==2&&i%5==3&&i%7==2)
{
printf("%8d",i);
count++;
if(count%10==0)
printf(" ");
}
}
}
帮你手打了一下,你自己测试与调试一下
热点内容