经典的C程序
程序一:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数
#include<stdio.h>
void main(){
int a, b, c, i;
for (i = ; i <= ; i++){
//获取百位数
a = i / ;
//获取十位数
b = i / % ;
c = i % ;
if ((a*a*a + b*b*b + c*c*c) == i){
printf("%d ",i);
}
}
}
程序二:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5
#include<stdio.h>
void main()
{
int a, k = , i;
char b[];
scanf_s("%d", &a);
printf("%d=", a);
for (i = ; i <= a; i++)
{
do
{
if (a%i == )
{
b[k] = i; k++;
a = a / i;
}
else
break;
} while (a >= i);
}
for (i = ; i< * k - ; i++)
if (i % == )
printf("%d", b[i / ]);
else
printf("*");
}
程序三:输入两个正整数m和n,求其最大公约数和最小公倍数。
#include<stdio.h>
void main()
{
int a, b, x, y, r, t;
scanf_s("%d,%d", &a, &b);
printf("%d %d\n", a, b);
x = a;
y = b;
//交换位置 最终结果 y>x
if (x>y)
{
t = y; y = x; x = t;
}
//碾转相除获取最大公约数
do
{
r = y%x;
y = x;
x = r;
} while (r != );
printf("%d ", y);
//根据两个数的乘积除以其最大公约数就是最小公倍数
printf("%d", a*b / y);
}
程序四:判断10-30之间有多少个素数,并输出所有素数。所谓素数:仅能被1和它本身整除的数。
#include<stdio.h>
void main()
{
int a, b, i, j, k, s = , n = ;
int c[];
for (i = ; i <= ; i++)
{
k = ;
for (j = ; j <= i / ; j++)
{
b = i%j;
if (b == )
k = ;
}
if (k == )
{
s++;//计数用
c[n] = i;//将素数放进数组中
n++;//数组键值
}
}
printf("%d\n", s);//一共多少个素数
//打印出数组内容
for (i = ; i<n; i++)
printf("%d ", c[i]);
}
程序五:Fibonacci数列,第1数为1,第2数为1,从第3输开始,为前两个数的和,即f1=1;f2=1;fn=fn-1+fn-2;求前20项个是什么,并且每行输出五个数
#include<stdio.h>
void main()
{
int f1, f2, f3, i, j;
f1 = ; f2 = ;
printf("%d %d ", f1, f2);
for (i = ; i <= ; i++)
{
f3 = f1 + f2;
f1 = f2;
f2 = f3;
printf("%d ", f3);
//换行使用
for (j = ; j <= ; j++)
{
if (i == * j - )
printf("\n");
}
}
}
程序六:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
#include <stdio.h>
void main()
{
int count, i, sum, t, a;
scanf_s("%d", &count);
scanf_s("%d", &a);
t = a; sum = ;
//每个数在前一个数的基础上增长了10倍 并加上了个位数
for (i = ; i <= count; i++)
{
sum = sum + t;
t = * t + a;
}
printf("%3d", sum);
}
经典的C程序的更多相关文章
- 100个经典C语言程序(益智类)
100个经典C语言程序(益智类) [1.绘制余弦曲线] 在屏幕上用“*”显示0~360度的余弦函数cos(x)曲线 [问题分析与算法设计] 利用cos(x)的左右对称性,将屏幕的行方向定义为x,列方向 ...
- [转]100个经典C语言程序(益智类问题)
目录: 1.绘制余弦曲线 2.绘制余弦曲线和直线 3.绘制圆 4.歌星大奖赛 5.求最大数 6.高次方数的尾数 8.借书方案知多少 9.杨辉三角形 10.数制转换 11.打鱼还是晒网 12.抓交通肇事 ...
- 最经典的SDK程序结构 HelloWin
程序运行效果:在创建窗口的时候,播放一个声音.且在窗口的客户区中央画一句文字:Hello, Windows 98!,无论程序怎么移动.最大化,文字始终在程序的中央部位. 程序总共分为六个步骤:定义,注 ...
- 创建一个包括菜单栏,工具栏,状态栏,文本编辑部件的经典GUI应用程序的骨架
效果如下: 代码如下: #!/usr/bin/python3 # -*- coding: utf-8 -*- """ This program creates a ske ...
- 转: GUI应用程序架构的十年变迁:MVC,MVP,MVVM,Unidirectional,Clean
十年前,Martin Fowler撰写了 GUI Architectures 一文,至今被奉为经典.本文所谈的所谓架构二字,核心即是对于对于富客户端的 代码组织/职责划分 .纵览这十年内的架构模式变迁 ...
- C++小项目:directx11图形程序(二):systemclass
先上代码: systemclass.h #pragma once #include"graphicsclass.h" const bool FULLSCREEN = true; c ...
- 黑马程序员——JAVA基础之简述多线程,两种创建多线程的方式
------- android培训.java培训.期待与您交流! ---------- 多线程: 进程和线程: 进程:是一个正在执行中的程序.每一个进程执行都有一个执行顺序.该顺序是一个执行路径,或者 ...
- 使用ToolRunner运行Hadoop程序基本原理分析
为了简化命令行方式运行作业,Hadoop自带了一些辅助类.GenericOptionsParser是一个类,用来解释常用的Hadoop命令行选项,并根据需要,为Configuration对象设置相应的 ...
- 【转】Android C程序也可自己手动用交叉编译器编译 (
原文网址:http://blog.sina.com.cn/s/blog_533074eb0101ez5q.html Android 编译环境 本身比较复杂,且不像普通的编译环境:只有顶层目录下才有 M ...
随机推荐
- iOS 开发中使用到的小技巧汇总
国庆即将来到,一个小项目也即将完成,把自己在项目中用的一些小技巧写出来,方便查找. 1,去掉分割线--动画设置透明度alpha //去掉tableView的分隔线: self.tableVie ...
- LINQ to JavaScript
JSLINQ 是一个将LINQ对象转化为JavaScript对象的工具 .它是构建在JavaScript的数组对象的基础上进行转换的,如果您使用的是一个数组,你可以使用LINQ到javascript ...
- Android网络传输中必用的两个加密算法:MD5 和 RSA (附java完毕測试代码)
MD5和RSA是网络传输中最经常使用的两个算法,了解这两个算法原理后就能大致知道加密是怎么一回事了.但这两种算法使用环境有差异,刚好互补. 一.MD5算法 首先MD5是不可逆的,仅仅能加密而不能解密. ...
- Android史上功能最全的日历控件
※效果 ※用法 package com.fancyy.calendarweight; import java.util.ArrayList; import java.util.List; import ...
- WPF WebBrowser
XAML <Window x:Class="WpfApplication5.Window1" xmlns="http://schemas.microso ...
- MonkeyRunner源码分析之工作原理图
http://www.androidchina.net/1315.html
- Linux内核里的DebugFS
DebugFS,顾名思义,是一种用于内核调试的虚拟文件系统,内核开发者通过debugfs和用户空间交换数据.类似的虚拟文件系统还有procfs和sysfs等,这几种虚拟文件系统都并不实际存储在硬盘上, ...
- Android开发之线程池使用总结
线程池算是Android开发中非常常用的一个东西了,只要涉及到线程的地方,大多数情况下都会涉及到线程池.Android开发中线程池的使用和Java中线程池的使用基本一致.那么今天我想来总结一下Andr ...
- WPF翻转动画
在WPF中要翻转对象,估计是得用三维变换,所以我用到了AxisAngleRotation3D,让图形绕着Z轴来旋转. 先看看效果. 是的,就是这样的效果,在XAML中,由于涉及三维图形,我先做了两个用 ...
- 闲话:你今天OO了吗?
如果你的分析习惯是在调研技术的时候最先弄清楚有多少业务流程,先画出业务流程图,然后顺藤摸瓜,找出业务流程中每一步骤的参与部门或岗位,弄清楚在这一步参与者所做的事情和填写表单的结果,并关心用户是如何把这 ...