這是我的代碼
#include <stdio.h>
void main()
{int a,n=0,i,j,k,t;
scanf("%d",&a);
for(t=100;t<=999;t+=1)
{i=t/100;
j=t/10%10;
k=t%10;
if(i+j+k==7) n+=1;
if(n==a) printf("%d\n",t);
}
}
我使用了循環語句,但是結果出來很多數字 我不明白後面那些如何出來的,,,按說if(n==a)應該只有一種情況 a是輸入的 然後n一直增加呀,,,
第二個回答是正確的,你在循環的時候如果你的需求是遍歷並處理所有的數據,則不需要跳出語句,但是如果你不是要遍歷並處理所有的數據,只是需要其中幾個或一個的時候,一定要注意跳出循環
for(t=100;t<=999;t+=1)
{
i=t/100;
j=t/10%10;
k=t%10;
if(i+j+k==7)
n+=1;
if(n==a)
{
//你這裡的意思是如果n==a,則輸出所有的第一個數字為一的,且個位,十位,百位之和為7的數字
printf("%d\n",t);
}
}