我爱占星网 我爱占星网
首页
编程
java
php
前端
首页 编程 java php 前端

一个C语言16进制加法的程序

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main() {
	int n, sum = 0x0;
	while ('\n'!=getchar()) {
		scanf("%x", &n);
		sum += n;
	}
	printf("%d", sum);
	return 0;
}

我真的疑惑了,为什么溢出了啊...

因为getchar()先获取了一个字符,所以scanf获取到错误的数值,将getchar放到最后就行

int main() {

	int n, sum = 0x0;
	 do {

		scanf_s("%x", &n);
		sum += n;

	 } while ('\n' != getchar());
	printf("%d", sum);

	return 0;
}

 

近期文章

  • 请大神指点,小白跪谢
  • Java中try-catch结构语法
  • Java中继承 求代码样式
  • 求Delphi 10版本的中文帮助文档,chm格式的
  • java大数相乘,希望出界抛异常。
  • vgg19训练图像分类,分成两类,这样训练出来的网络是否过拟合了?
  • 求解答,v-for使用问题
  • springboot maven goals 为空,如果不设置的话,默认是哪种执行方式
  • R语言绘图中文标题出现乱码
  • 【新手学Java】实现comparable接口,重写compareTo()方法 问题
  • 用Socket写了一个聊天室,为什么客户端看不到实时的收发信息?
  • opencv 已经安装,但anaconda里的应用找不到它
  • C#winform,求教,TEXTBOX中的数据怎么永久保存
  • 【python】成功安装matplotlib,运行无错误,但图表绘制不出来
  • Ubuntu 无法显示所有汉字
  • mysql中的多表查询
  • module 'luasql.mysql' not found?
  • tomcat启动报web.xml错误
  • JMeter beanshell问题
  • 为什么等于11啊大佬们

Copyright ©2022 我爱占星 All Rights Reserved.

浙ICP备2022030071号-1

部分图文来自网络,如有侵犯您的版权,请告诉我们删除

友情链接:代码精华