韓信點兵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(" ");
}
}
}
幫你手打了一下,你自己測試與調試一下
熱點內容