#include
#include
void main(){
int i, gw, sw, count;
/**/
count=0;//每5个一行的计数器,初值是0
/**/
for(i=100;i<=200;i++){//遍历100~200的所有数
sw=i/10;//取出十位和百位组成新数,也可以sw=i/10%10直接取出十位数
/**/
gw=i%10;//取得个位数
/**/
if(gw%2!=0 && sw%2==0 ){//若个位数是奇数且十位数为偶数则向下做,否则跳过取下一个数
if(/**/ count%5==0 /**/)//判断是不是输出5个数了即计数是5的倍数
printf("\n");//若已经输出5个数了则添加一个回车
printf("%5d",i);//间隔5列输出一个数右对齐
count++;//输出计数+1
}
}
getch();//停一下
}
#include
#include
int main() {
int i, gw, sw, count;
count=0;
for(i=100; i<=200; i++) {
sw=i/10;
gw=i%10;
if( gw%2!=0 && sw%2==0 ) {
if( count%5==0 ) printf("\n");
printf("%5d",i);
count++;
}
}
getch();
}
枚举并分别求出十位(sw)和个位(gw)后检验
1、野指针,你使用的指针指向未知区域
2、scanf函数输入整形、字符……的时候缺少了&
3、缓冲区溢出,也就是说你使用数组时不经意间越界了