C 语言学习 3
【程序3】
题目:一个整数,它加上100后是一个全然平方数。再加上168又是一个全然平方数。请问该数是多少?
1.程序分析:在10万以内推断。先将该数加上100后再开方,再将该数加上268后再开方,假设开方后的结果满足例如以下条件,即是结果。请看详细分析:
2.程序源码:
#include "math.h"
#include "stdio.h"
#include "conio.h"
main()
{
long int i,x,y,z;
for (i=1;i<100000;i++)
{
x=sqrt(i+100); /*x为加上100后开方后的结果*/
y=sqrt(i+268); /*y为再加上168后开方后的结果*/
if(x*x==i+100&&y*y==i+268) /*假设一个数的平方根的平方等于该数,这说明此数是全然平方数*/
printf("\n%ld\n",i);
}
getch();
}
这个函数中调用了 sqrt 函数,它在 math.h 文件里,我第一次调用这个函数出错,但不是由于我使用的错误,而是程序中的 x、y、z 參数的类型设错了。应该设 long int,它是有符号的,并且应该是 long 型的,否则有可能会溢出。
至于函数中为什么要推断小于 100000,这个真不知道,标记一下。或者谁知道,给个答案。
这里面还有个思维方式的问题。假设你想用开根号函数来做此题,不是不能够,不过只在參数的类型上就非常麻烦。假设不用开根号而是用平方来推断,结果是一样的,可是会简单非常多。
C 语言学习 3的更多相关文章
- C语言学习 第八次作业总结
本次作业其实没有新的内容,主要就是复习上一次的一维数组的相关内容.冯老师布置了5道题目,其中涉及到一些比较简单的排序或者是查找的方法.因为数据很少,所以直接使用for循环遍历就可以了. 关于本次作业, ...
- C语言学习 第七次作业总结
C语言学习 第七次作业总结 数组可以分为数组和多下标数组(在传统的国内C语言书本中,将其称为二/多维数组). 数组名称 在之前的课程中,大家应该都有印象,对于int a这样的定义,会为变量 a 声明一 ...
- 技能收获与C语言学习
你有什么技能比大多人(超过90%以上)更好? 我会的东西很多,喜欢的东西太多,但是很遗憾广而不专,会而不精.学了很多东西我都是为了娱乐,因为以前我们那里过于强调学习,很多爱好也都被扼杀在摇篮里.我觉得 ...
- 一份关于Swift语言学习资源的整理文件
一份关于Swift语言学习资源的整理文件 周银辉 在这里下载 https://github.com/ipader/SwiftGuide
- go语言学习笔记
Go语言学习基本类型Bool 取值范围:true,false (不可以用数字代替)Int/uint 根据平台可能为32或64位int8/uint8 长度:1字节 取值范围-128~127/0~255b ...
- 20155206赵飞技能获取经验,C语言学习感想与对JAVA的学习目标
自己较强的技能获取经验. 1:实话实说我自己是没有哪个技能可以超过90%的人的,只有自认为做的还可以的一些事情,例如打篮球,office软件的应用,一百米跑.至于其他方面就是很平庸了. 2:经验主要有 ...
- HTML语言学习笔记(会更新)
# HTML语言学习笔记(会更新) 一个html文件是由一系列的元素和标签组成的. 标签: 1.<html></html> 表示该文件为超文本标记语言(HTML)编写的.成对出 ...
- 20155229-付钰涵-分析自我技能延展到c语言学习状况
我的小技能 我记得幼儿园时表演的舞蹈,也记得从水彩到素描的学习,还记得小学和初中获得的钢琴省级奖项. 舞蹈止于一年级,绘画止于三年级,钢琴从学前班到高一那十年的时间里有过断续. 03年-04年的那个冬 ...
- linux 下C语言学习路线
UNIX/Linux下C语言的学习路线.一.工具篇“公欲善其事,必先利其器”.编程是一门实践性很强的工作,在你以后的学习或工作中,你将常常会与以下工具打交道, 下面列出学习C语言编程常常用到的软件和工 ...
- [go语言学习指南]
内部分享,根据自己的经验,收集汇总的go语言学习指南. 适合新手入门. 可以通过这里进行下载.
随机推荐
- ext2 与 ext3
http://linux.vbird.org/linux_basic/1010appendix_B.php https://baike.baidu.com/item/Ext2/822106?fr=al ...
- 【03】Vue 之列表渲染及条件渲染
3.1. 条件渲染 有时候我们要根据数据的情况,决定标签是否进行显示或者有其他动作.最常见的就是,表格渲染的时候,如果表格没有数据,就显示无数据.如果有数据就显示表格数据. Vue帮我们提供了一个v- ...
- FusionCharts参数大全
原文发布时间为:2010-01-11 -- 来源于本人的百度文章 [由搬家工具导入] Fusioncharts 参数 objects ANCHORS 锚点 用于标识line或area的数值点 支持效果 ...
- UBUNTU命令行下进程查看-终止
ps ax 显示当前系统进程的列表 ps aux 显示当前系统进程详细列表以及进程用户 如果输出过长,可能添加管道命令 less 如 ps ax|less 查看具体进程,使用 grep命令如 ...
- Error-invalid project description(转)
导入android工程时有时会出现下面错误: 按照提示,说是当前的工作空间内已经有同名的工程了,但实际是没有的. 多次碰到这种问题后,无意间找到解决办法.导入工程时,不要选择Android,而是选择G ...
- 初始化home目录
mkdir WORKM 公共资料 科学研究 临时文档 项目开发 正在学习 专职教学 自作文档
- hdu 3639 有向图缩点+建反向图+搜索
题意:给个有向图,每个人可以投票(可以投很多人,一次一票),但是一个人只能支持一人一次,支持可以传递,自己支持自己不算,被投支持最多的人. 开始想到缩点,然后搜索,问题是有一点想错了!以为支持按票数计 ...
- 安卓全屏状态下键盘充满屏幕留不出ui控件的解决办法附edittext和键盘的属性
1.我们先看看常用和不常用的属性值(Edittext) android:inputType参数类型说明 android:inputType="none"--输入普通字符 andro ...
- 离线安装ATOM插件
refer to https://blog.csdn.net/ytangdigl/article/details/75168695 cd ~/.atom/packages git clone http ...
- Linux下创建和删除用户
在Linux下创建用户和删除用户,必须在root用户下,如果你当前不是用根用户登录,你可以打开终端,输入"su root"命令,再输入根口令,就可以进入root用户模式下,如下所示 ...