为备考二级C语言做的代码练习---辅导资料《C语言经典编程282例》--(1)
因为二级考试的时候用的C语言编译器是VC++6.0 真是日了狗了 用这个编译器 这是我第2个C编译器吧,第一个用的是啊哈C编译器..第二个是VS++6.0 然后在win下用VS2013感觉挺不错的 毕竟是做大开发的软件 代码补全,和格式,字体,还可以换代码的背景,各种功能,就是对新手来说,你用scanf它不让你用,让你用scanf_s,因为它觉得这样比较安全,避免一些XX溢出云云的,还有gets要写成gets_s() 之类的,我在想要是我一直用VS2013 那考试的时候写的代码也是这种格式的...我肯定VS6.0会报错,然后我还要找错,这就耽搁了考试的宝贵时间了!,所以我决定这本书的编译器就用VC++6.0了,感觉和用vim差不多...单看代码补全这快的话... 考完二级C..我肯定能考过!!!(士可鼓不可泄)然后就让VC++6.0 bye bye了
2015年11月29日04:52:00代码练习开始~~~啦
//3个数字从小到大排序 我还是不太清楚怎么排序的 老晕 大概明白了 我也背会了!
#include<stdio.h>
int main ()
{
int a,b,c,t;
printf("Please input a,b,c;\n");
scanf("%d %d %d",&a,&b,&c); if(a>b)
{ //a b值通过t互换
t=a;
a=b;
b=t;
}
if(a>c)
{//a c 值通过t互换 经过a和b和c比较后 a若为最大值就放在最后面
t=a;
a=c;
c=t;
} if(b>c)
{ //b和c再比较 最大值放在后面
t=b;
b=c;
c=t;
}
printf("The order of the number is:\n");
printf("%d %d %d ",a,b,c);
return ;
}
//猴子吃桃问题
#include<stdio.h>
int main ()
{
int day,x1,x2;
day=; //记录天数的变量
x2=; //第10天桃子数量 while(day>)//9 8 7 6 5 4 3 2 1
{
x1=(x2+)*2;//1.猴子吃桃数+1得到原本的一半数量 2.然后X2得到原本数量 也就是前一天桃子所剩下的数量 猴子是先吃1半再吃1个 ------>>>>我们逆着算就要先+1算出他吃一半的数量 然后x2得到它吃的数量 我他妈终于弄明白了!
x2=x1;
day--;
}
printf("the total is %d\n",x1); return ;
}
/* 我自己写的一句printf用来打印桃子天数和桃子数量的值 不过这句代码没贴在上面
第9天桃子数量为4
第8天桃子数量为10
第7天桃子数量为22
第6天桃子数量为46
第5天桃子数量为94
第4天桃子数量为190
第3天桃子数量为382
第2天桃子数量为766
第1天桃子数量为1534
Press any key to continue
*/
//涛涛买苹果..涛涛每天买苹果 每个苹果0.8元 涛涛第一天买2个 第二天开始买前一天的2倍 直到购买苹果个数不超过100的最大值 <100
//n为个数变量 每过一天(day++) n*2 每天x2 买苹果的数量为2 4 8 16 32 64 128 我又加了一个输出涛涛苹果数量的程序
#include<stdio.h>
int main ()
{
int n=,day=; //第一天个数 和天数
float money=,ave; while(n<)
{
money=money+0.8*n;
day++;
n*=; //n每次x2
}
ave=money/day;
printf("我是个傻逼我天天买苹果..我是涛涛 我买了%d个苹果",n/2);//因为n退出循环后 是因为n>或者是=100 是因为多X了一次2 所以要/2才能得到涛涛买苹果的数量
printf("The result is %.6f",ave);
return ;
} //我是个傻逼我天天买苹果..我是涛涛 我买了64个苹果
//The result is 16.799999
/*
买的苹果数量为64 共花了100.80元钱,平均每天花了14.40元钱
苹果数=2 money=1.600000 天数=1
苹果数=4 money=4.800000 天数=2
苹果数=8 money=11.200000 天数=3
苹果数=16 money=24.000000 天数=4
苹果数=32 money=49.599998 天数=5
苹果数=64 money=100.799995 天数=6
买的苹果数量为64 共花了100.799995元钱,平均每天花了14.399999元钱
*/
2015年11月30日04:07:10 接着练了!!!每天练几道!
#include<stdio.h>
/*
求一个整数任意次方后的最后三位数字 */ int main ()
{
int i,x,y,z=;
printf("请输入两个数,x和y(y是x的幂):\n");
scanf("%d %d",&x,&y);
for(i=;i<=y;i++)
{
z=z*x%;
if(z>=)
{
printf("%d%d的最后三位数是:%d",x,y,z);
}
else
{
printf("%d%d的最后三位数是:%d",x,y,z);
}
} return ;
}
/*
算法分析:
y为x的幂 z用来保存这个整数任意次方后的最后三位数字
试数字
1234的2次方为 1 522 756
1》 x=1234 y=2
i=1 i<=2
z=z*1234%1000=234
z>100
i++=2 2》z=234*1234%1000=756 疑惑:
为什么要判断z的值是否大于或者等于100呢?
还有为什么这个数的最后三位数x这个数的结果的最后三位数 就是这个数平方积的最后三位数了 这是一个公式吗?
234 * 1234 % 1000
*/
根据上面代码的功能的一次改进,因为都是求一个数的任何幂的最后三位数,上面的代码我愣是没看懂..不过以后会看懂的,多练,怕啥.又不是啥国际性数学难题,世界上解出来的没有几个人。我自己写的这个代码如下
注意:编译器用的VS2013 注意scanf_s 要是其他编译器上跑的话 要改成scanf 因为实在受不了VC++6.0的环境..感觉不舒服 就暂时用下VS2013~~
/*
这个是我自己写的也是求任意次方的最后三位数
1.求出这个任意次方后的结果
2.判断这个数有多少位 3位数的话就输出这个数字 小于3位数就提示输出的数次方的位数小于3位数是x位数
3.大于3位数的话 就输出这个数的最后三位数
*/
#include<stdio.h>
#include<Windows.h>
int main()
{
//求一个数字任意次方后的最后三位数字
int n, y,i,m=;//y为n的幂 i为循环变量 m保存次方后的结果变量
int result;//存放结果变量
int dight = ;//存放位数的变量
int m_temp;//用来求位数的时候使用
printf("请输入n的值以及n的幂:\n");
scanf_s("%d %d",&n,&y); //3 3
for (i = ; i <=y; i++) //1 2
{
//本循环用来计算这个数次方后的结果
m = m*n;
}
m_temp = m;
//判断这个数有多少位数的for循环 while (m_temp != )//m=224
{
m_temp= m_temp / ;//22 |2 0
dight++;//1 |2 |3
} if (dight < )
{
printf("本程序用来计算一个数的任何次方的末尾的三个数字,而通过计算,您输入的这个数字次方的结果小于3位数 它只有:%d位数\n", dight);
}
else if (dight == )
{
printf("这个数的次方结果为一个三位数,所以程序将为您输出这个数的全部部分%d\n", m);
} else if (dight>)
{
result = m % ;
printf("%d的%d次方的结果是%d %d的最后三位数是%d", n, y, m, m, result);
} system("pause");
return ;
}
为备考二级C语言做的代码练习---辅导资料《C语言经典编程282例》--(1)的更多相关文章
- 趣谈编程史第2期-这个世界缺少对C语言的敬畏,你不了解的C语言科普
这是我制作的编程语言科普系列视频的第二期,博客根据视频文案整理而成,提供给有需要的朋友阅读或使用. 视频地址:https://www.bilibili.com/video/av83627932/ ...
- 用Go语言做产品半年的一些感觉
用Go语言做产品刚好半年,有一些感觉跟大家说道说道. 在使用Go之前,我常常想象,无法使用先进的Debug工具会对工作进度造成多么巨大的影响.甚至在Visual Studio的娇惯下认为,不能调试基本 ...
- 从linux0.11中起动部分代码看汇编调用c语言函数
上一篇分析了c语言的函数调用栈情况,知道了c语言的函数调用机制后,我们来看一下,linux0.11中起动部分的代码是如何从汇编跳入c语言函数的.在LINUX 0.11中的head.s文件中会看到如下一 ...
- C语言做一个通讯录程序(在console里面运行)
最近复习C语言的时候看到网上有个C语言通讯录的小项目,于是看了下那个程序实现的大概的功能,然后自己也跟着做了个.代码还算简洁,贴上来给有需要的人. // // main.m // AdressBook ...
- 快看Sample代码,速学Swift语言(1)-语法速览
Swift是苹果推出的一个比较新的语言,它除了借鉴语言如C#.Java等内容外,好像还采用了很多JavaScript脚本里面的一些脚本语法,用起来感觉非常棒,作为一个使用C#多年的技术控,对这种比较超 ...
- 为什么要用Go语言做后端
FMZ数字货币量化平台 www.fmz.com, 后端使用Go语言,这里是创始人Zero谈论使用Go语言所带了的便利.原帖地址:https://www.zhihu.com/question/27172 ...
- 小C和小派的缠绵爱情——C语言调用Python代码
我妒忌你的开源,你眼红我的速度,不如我们就在一起吧! --------SJ2050 2019.4.9号更新:实现在未安装python环境的机子上运行调用了python程序的C语言代码! 文章目录 环境 ...
- 编程算法 - 不用加减乘除做加法 代码(C)
不用加减乘除做加法 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 写一个函数, 求两个整数之和, 要求在函数体内不得使用+, -, *, /四 ...
- [Windows Phone] 以多国语言做为开发前提 (1)
原文:[Windows Phone] 以多国语言做为开发前提 (1) ? 前言 在先前 TechDays 2013 的课程 [开发 Windows Phone 商务应用程式就是这麽快] 中,其中一个部 ...
随机推荐
- Xposed初体验
Xposed初体验 1 测试环境 硬件:小米2s 16GB 电信版 系统:MIUI 4.4.18(开发版) Xposed版本: 2.5 注:Xposed版本号必须大于2.3,MIUI系统版本号也必须大 ...
- 解决 unity 用 vs通过wifi 真机联调 一直连接不上
平时 在公司网络太差,要通过wifi 用vs真机联调时,vs一直连不上设备,很是蛋疼...用下面官方给出的方法可以解决 Attaching MonoDevelop Debugger To An And ...
- js6:history和navigator对象的学习
原文发布时间为:2008-11-08 -- 来源于本人的百度文章 [由搬家工具导入] <html> <head> <title>js</title> & ...
- post sharp 与log4net 结合使用,含执行源码 转拷
环境: VS 2012 PostSharp-4.1.28 (下载地址)https://visualstudiogallery.msdn.microsoft.com/a058d5d3-e654-43f8 ...
- Netbeans 8.2启动参数含义及配置
在manjaro linux中Netbeans8.2 + JDK 1.8 netbeans的配置文件具体在:/usr/share/netbeans/etc/netbeans.conf,需要使用root ...
- 项目中使用libsodium扩展
前段时间研究了微信小微商户,地址:https://pay.weixin.qq.com/wiki/doc/api/xiaowei.php?chapter=19_11 其接口操作中需要下载证书针对返回的密 ...
- luogu P1260 工程规划(luogu wa)don't know way
题目描述 造一幢大楼是一项艰巨的工程,它是由n个子任务构成的,给它们分别编号1,2,…,n(5≤n≤1000).由于对一些任务的起始条件有着严格的限制,所以每个任务的起始时间T1,T2,…,Tn并不是 ...
- luogu P1304 哥德巴赫猜想
题目描述 输入N(N<=10000),验证4~N所有偶数是否符合哥德巴赫猜想. (N为偶数). 如果一个数,例如10,则输出第一个加数相比其他解法最小的方案.如10=3+7=5+5,则10=5+ ...
- Concurrency(Locking, Blocking and Row Versioning)
https://www.simple-talk.com/sql/t-sql-programming/row-versioning-concurrency-in-sql-server/?utm_sour ...
- mysql老司机之路
MYSQL数据库基础: 数据库帮我们解决以下数据存取难题: 较大数据量 事务控制 持久化和数据安全 高性能要求 高并发访问 关系型:mysql,oracle,sql server,postgresql ...