思路:通过嵌套循环尝试每一组可能的数字,并将符合条件101a+20b+101c==1333的数据打印出来。
a和c都要作为百位数,要组成三位数它们就不能为0。注意使用while循环时父循环开始都要重置子循环中的数据,否则就会错误。以下为代码:
#include <stdio.h>
int main(void){
short a,b,c;
a=c=1;//a和c作为百位数,不可为0
b=0;
while(a++<9){
b=0,c=1;//注意每次循环都要初始化b和c。
while(b++<9){
c=1;
while(c++<9){
if (101*a+20*b+101*c==1333)
printf("%d,%d,%d\n",a,b,c);
}
}
}
return 0;
}
本程序使用for实现更加简单,无需在循环体中填写初始化代码,在for语句中写入即可。