博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PAT L1-025. 正整数A+B
阅读量:4156 次
发布时间:2019-05-26

本文共 1112 字,大约阅读时间需要 3 分钟。

PAT L1-025. 正整数A+B


/*(1)B有可能包含空格(2)A, B可能是超出范围[1, 1000]的数*/#include 
#include
#include
#include
int // 检查a[]是否全是数字isInt(char a[1005]) { int i, len = strlen(a); for( i = 0; i < len; i++ ) { if( !(a[i] >= '0' && a[i] <= '9') ) { return 0; } } return 1;}int // 判断a是否在区间[1, 1000]f(char a[1005]) { int i, len = strlen(a), ans = 0; // 可看成是一个低效的atoi()函数 for( i = len - 1; i >= 0; i-- ) { ans += (a[i] - '0') * pow(10, len - i - 1); } if( !(ans >= 1 && ans <= 1000) ) { return 0; } return 1;}intmain() { char a[1005], b[1005]; scanf("%s", a); getchar(); gets(b); // b有可能包含空格 if( isInt(a) == 1 && isInt(b) == 1 && f(a) == 1 && f(b) == 1 ) { printf("%s + %s = %d\n", a, b, atoi(a) + atoi(b)); } else if( (isInt(a) == 0 || f(a) == 0) && (isInt(b) == 0 || f(b) == 0) ) { printf("? + ? = ?\n"); } else if( isInt(a) == 1 && f(a) == 1 ) { printf("%s + ? = ?\n", a); } else if( isInt(b) == 1 && f(b) == 1 ) { printf("? + %s = ?\n", b); } return 0;}

转载地址:http://qpkxi.baihongyu.com/

你可能感兴趣的文章
你应该知道的Unix和Linux命令 lsof
查看>>
Nginx模块开发入门
查看>>
安全的Web主机iptables防火墙脚本
查看>>
Nginx的平滑重启和平滑升级
查看>>
大型互联网站解决海量数据的常见策略
查看>>
好多东西还是看官网的比较好... MySQL 5.1 Server System Variables
查看>>
chattr
查看>>
/etc/sysctl.conf 调优 & 优化Linux内核参数
查看>>
C代码阅读工具---calltrer
查看>>
网站加速--服务器编写篇
查看>>
MySQL性能优化的21个最佳实践
查看>>
mysql 从文件导入sql 乱码问题...
查看>>
推荐使用percona版mysql
查看>>
大文件重定向和管道的效率对比
查看>>
Tair ldb(leveldb存储引擎)实现介绍
查看>>
通过apache/nginx禁止访问.svn目录
查看>>
C++性能优化技术导论
查看>>
SQL-92定义的errorcode 通过PDO什么的返回的值~
查看>>
linux 终端控制 颜色/位置 man console_codes
查看>>
深入了解php底层机制
查看>>