100个C/C++的编程小例子(2014.1.24)(更新)
本帖最后由 清风袋袋 于 2014-1-24 17:20 编辑在网上找到的C/C++编程百例,想和大家分享一下,有兴趣的大家每天练练手,最后我会整理出来仪器放上去的~先给出第一题:
1、在屏幕上用“*”显示0~360度的余弦函数cos(x)曲线
#include<stdio.h>
#include<math.h>
int main()
{
double y;
int x,m;
for(y=1;y>=-1;y-=0.1) //y为纵坐标方向,值从1到-1,步长为0.01
{
m = acos(y)*10; //计算出y对应的弧度m,乘以10为图形放大倍数
for(x=1;x<m;x++) printf(" ");
printf("*"); //控制打印左侧的*号
for(;x<62-m;x++)printf(" ");
printf("*\n"); //控制打印同一行中对称的右侧*号
}
return 0;
}
精度当然不是很高,只是意思上的余弦曲线了。
给出每次的更新,这样方便点:
1、2013.12.25http://bbs.fishc.com/thread-41991-1-1.html
2、2013.12.26http://bbs.fishc.com/forum.php?m ... d=41991&pid=1567501
3、2013.12.27http://bbs.fishc.com/forum.php?m ... d=41991&pid=1569061
4、2014.1.1 http://bbs.fishc.com/forum.php?m ... d=41991&pid=1581185
5、2014.1.7 http://bbs.fishc.com/forum.php?m ... d=41991&pid=1596417
6、2014.1.9 http://bbs.fishc.com/forum.php?m ... d=41991&pid=1600160
7、2014.1.12 http://bbs.fishc.com/forum.php?m ... d=41991&pid=1606759
8、2014.1.15 http://bbs.fishc.com/forum.php?m ... d=41991&pid=1612222
9、2014.1.17 http://bbs.fishc.com/forum.php?m ... d=41991&pid=1615373
10、2014.1.21http://bbs.fishc.com/forum.php?m ... d=41991&pid=1622832
11、2014.1.24http://bbs.fishc.com/forum.php?m ... d=41991&pid=1627918
先占了沙发再说吧。。。感谢楼主分享。。。。 楼主我回复顶你的贴,你不会不开心吧!!{:7_183:} 楼主楼主其他的在哪呢?
12月26日
本帖最后由 清风袋袋 于 2014-1-9 13:55 编辑现在给出第二题(那个啥,比较忙,所以尽量一天给一题吧)
2.绘制余弦曲线和直线
#include<stdio.h>
#include<math.h>
int main()
{
double y;
int x,m,n,yy;
for(yy=0;yy<=20;yy++) //对于第一个y坐标进行计算并在一行中打印图形
{
y=0.1*yy; //y:屏幕行方向坐标
m=acos(1-y)*10; //m: cos(x)曲线上y点对应的屏幕列坐标
n=45*(y-1)+31; //n: 直线上y点对应的列坐标
for(x=0;x<=62;x++) //x: 屏幕列方向坐标
if(x==m&&x==n) printf("+"); //直线与cos(x)相交时打印“+”
else if(x==n) printf("+"); //打印不相交时的直线图形
else if(x==m||x==62-m) printf("*"); //打印不相交时的cos(x)图形
else printf(" "); //其它情况打印空格
printf("\n");
}
return 0;
}
12月27日
3.绘制圆在屏幕上用“*”画一个空心的圆
#include<stdio.h>
#include<math.h>
int main()
{
double y;
int x,m;
for(y=10;y>=-10;y--)
{
m=2*sqrt(100-y*y); //计算行y对应的列坐标m
//2是屏幕调节系数
for(x=1;x<30-m;x++) printf(" "); //图形左侧空白控制
printf("*"); //圆的左侧
for(;x<30+m;x++) printf(" "); //图形的空心部分控制
printf("*\n"); //圆的右侧
}
return 0;
} 正在写代码 发表于 2013-12-25 20:44 static/image/common/back.gif
楼主我回复顶你的贴,你不会不开心吧!!
不会。。。。多顶几下,会更好的,黑黑{:7_183:} 清风袋袋 发表于 2013-12-27 15:06 static/image/common/back.gif
不会。。。。多顶几下,会更好的,黑黑
开心就好{:5_91:} 正在写代码 发表于 2013-12-27 15:09 static/image/common/back.gif
开心就好
每天更新,咋没人呢 看看啊!!!!!!!!!!
(2014.1.1)
抱歉啊,各位,前两天要跨年了,就忙了~给出第四题:4.歌星大奖赛
在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1~100分。选手最后得分为:去掉一个最高分和 一个最低分后其余8个分数的平均值。请编写一个程序实现。
#include<stdio.h>int main(){ int integer,i,max,min,sum; max=0; //先假设当前的最大值max min=100; //先假设当前的最小值min sum=0; //将求累加和变量的初值置为 for(i=1;i<=10;i++) { printf("Input number %d=",i); scanf("%d",&integer); //输入评委的评分 sum+=integer; //计算总分 if(integer>max)max=integer; //通过比较筛选出其中的最高分 if(integer<min)min=integer; //通过比较筛选出其中的最低分 } printf("Canceled maxscore:%d\nCanceled min score:%d\n",max,min); printf("Average score:%d\n",(sum-max-min)/8);//输出结果
}
算了吧,大家都不看,那就不更新了{:1_1:} 我看啊,怎么能不更新呢!,楼主不要放弃啊 这个真的很有意思啊,我看你这题思路开阔了好多 lylqiang 发表于 2014-1-7 20:05 static/image/common/back.gif
这个真的很有意思啊,我看你这题思路开阔了好多
谢谢,我会再坚持一下!
(2014.1.7)
本帖最后由 清风袋袋 于 2014-1-9 13:52 编辑5.求最大数今天这个题目应该很简单的吧?
问555555的约数中最大的三位数是多少?
#include<stdio.h>
int main()
{
long i;
int j;
printf("Please input number:");
scanf("%ld",&i);
for(j=999;j>=100;j--)
if(i%j==0)
{
printf("The max factor with 3 digits in %ld is:%d,\n",i,j);
break;
}
}
看看.................... 好,简单也是一种思路
(2014.1.9)
本帖最后由 清风袋袋 于 2014-1-9 13:52 编辑6.高次方数的尾数
求13的13次方的最后三位数(之前还不会发代码呢,现在会了,改了格式更加清晰啦)
#include<stdio.h>
int main()
{
int i,x,y,last=1; //变量last保存求X的Y次方过程中的部分乘积的后三位
printf("Input X and Y(X**Y):");
scanf("%d**%d",&x,&y);
for(i=1;i<=y;i++) //X自乘Y次
last=last*x%1000; //将last乘X后对1000取模,即求积的后三位
printf("The last 3 digits of %d**%d is:%d\n",x,y,last%1000);
}
2014.1.12
7.阶乘尾数零的个数100!的尾数有多少个零?#include<stdio.h>
int main()
{
int a,count =0;
for(a=5;a<=100;a+=5) //循环从5开始,以5的倍数为步长,考察整数
{
++count; //若为5的倍数,计数器加1
if(!(a%25)) ++count;//若为25的倍数,计数器再加1
}
printf("The number of 0 in the end of 100! is: %d.\n",count); //打印结果
return 0;
}这里稍微解释一下,由于计算机所能表示的整数范围有限,直接解是不可能的。所以必须首先从数学上分析在100!结果值的末尾产生零的条件。不难看出:一个整数若含有一个因子5,则必然会在求100!时产生一个零。因此问题转化为求1到100这100个整数中包含了多少个因子5。若整数N能被25整除,则N包含2个因子5;若整数N能被5整除,则N包含1个因子5。
页:
[1]
2