C++数据异常的bug

环境:蓝桥杯官网下载的Dev-C++

异常情况:在以下代码的情况下,无论输入任何合理的数字,程序末尾的H总是0.

                    更换IDE为C-Free 异常消失

                    将H移到外部后改为全局变量,异常消失

                    将中间无关代码注释后,异常消失

                    怀疑是编译器的bug或者是程序运行中堆出现了某种Bug,先记录下来,以后再研究

#include<stdio.h>

int main(){
	int H=5224;
	scanf("%d",&H);
	int T=999999;
	int i=10000;
	for(i=10000;i<=99999;++i){
		char Temp[5];
		sprintf(Temp,"%d",i);
		if(Temp[0]==Temp[4]&&Temp[1]==Temp[3]){
			int a=(int)(Temp[0]-'0');
			int b=(int)(Temp[1]-'0');
			int c=(int)(Temp[2]-'0');
			if(a+a+b+b+c==H){
				printf("%s\n",Temp);
			}
		}
	}
	for(i=100000;i<=999999;++i){
		char Temp[6];
		sprintf(Temp,"%d",i);
		if(Temp[0]==Temp[5]&&Temp[1]==Temp[4]&&Temp[2]==Temp[3]){
			int a=Temp[0]-'0';
			int b=Temp[1]-'0';
			int c=Temp[2]-'0';
			if(a+a+b+b+c+c==H){
			printf("%s\n",Temp);
			}	
		}
	}			
	printf("%d",H);
	return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值