本文地址:http://www.cnblogs.com/archimedes/p/programming-abstractions-in-c-1.html,转载请注明源地址。

1、温度转换:

#include<stdio.h>
int main()
{
double C;
while(~scanf("%lf", &C))
printf("%lf\n", * C * 1.0 / + );
return ;
}

2、长度转换:

#include<stdio.h>
int main()
{
double YCI, YC, M;
while(~scanf("%lf", &M)){
printf("YCI:%lf\n", 1.0 / 0.0254);
printf("YC:%lf\n", 1.0 / );
}
return ;
}

3、计算1+2+3+……+100

#include<stdio.h>
int main()
{
int sum = ;
for(int i = ; i <= ; i++)
sum += i;
printf("%d\n", sum);
return ;
}

4、计算序列值

#include<stdio.h>
int main()
{
int N, i, sum;
scanf("%d", &N);
sum = ;
i = ;
while(i <= N)
sum += * (i++) - ;
printf("%d\n", sum);
return ;
}

5、按照指定格式输入一个整数序列中的最大值

#include<stdio.h>
int main()
{
int max, n, i;
printf("This program finds the largest integer in a list.\n");
printf("Enter 0 to sigal the end of the list.\n");
printf("? ");
max = -;
while(scanf("%d", &n) && n) {
if(max < n) max = n;
printf("? ");
}
printf("The largest value is %d\n", max);
return ;
}

6、反转打印输入的整数

#include<stdio.h>
void print(int N)
{
printf("The reverse number is ");
while(N) {
printf("%d", N % );
N /= ;
}
printf("\n");
}
int main()
{
int N;
printf("This program reverses the digits in an integer.\n");
printf("Enter a positive integer: ");
scanf("%d", &N);
print(N);
return ;
}

7、寻找完全数

#include<stdio.h>
#include<math.h>
#include<stdbool.h>
bool IsPerfect(int n)
{
int m, sum, t;
sum = ;
m = (int)sqrt(n);
for(int i = ; i <= m; i++){
if(n % i == ) {
if(i * i == n) {
sum += m;
} else {
sum += (i + n / i);
}
}
}
if(sum == n)
return true;
else
return false;
}
int main()
{
for(int i = ; i <= ; i++) {
if(IsPerfect(i))
printf("%d\n", i);
}
return ;
}

8、按照指定格式分解质因数

#include<stdio.h>
#include<math.h>
#include<stdbool.h>
#define N 100000
int isprime[N];
bool prime(int n)
{
int i;
for(i = ; i * i <= n; i++) {
if(n % i == )
return false;
}
return true;
}
void init()
{
int i, k;
k = ;
for(i = ; i < ; i++) {
if(prime(i))
isprime[k++] = i;
}
}
void solve()
{
int i, n, flag, k, t;
init();
printf("Enter number to be factored: ");
while(~scanf("%d", &n)) {
k = flag = ;
if(prime(n)) {
printf("%d\n", n);
} else {
t = n;
while(isprime[k] < n) {
while(t % isprime[k] == ) {
if(!flag) {
flag = ;
printf("%d", isprime[k]);
} else {
printf(" * %d", isprime[k]);
}
t /= isprime[k];
}
k++;
}
printf("\n");
}
printf("Enter number to be factored: ");
}
}
int main()
{
solve();
return ;
}

9、浮点数按照规则转化为整数

#include<stdio.h>
#include<math.h>
#include<stdbool.h>
void Round(float n)
{
int m;
m = floor(n);
if(n > ) {
if(n - m < 0.5) {
printf("%d\n", m);
} else {
printf("%d\n", m + );
}
} else {
if(n - 0.5 > m) {
printf("%d\n", m + );
} else {
printf("%d\n", m);
}
} }
int main()
{
float n;
while(~scanf("%f", &n))
Round(n);
return ;
}

10、利用莱布利兹公式计算PI

#include<stdio.h>
#include<math.h>
#include<stdbool.h>
double count(int n)
{
int t, i;
double ans = 0.0;
t = ;
for(i = ; i <= n; i++) {
ans += t * 1.0 / ( * i - );
t *= -;
}
return * ans;
}
int main()
{
printf("%f\n", count());
return ;
}

11、通过扇形的面积近似计算PI

#include<stdio.h>
#include<math.h>
#include<stdbool.h>
#define N 100
void solve()
{
int i;
double w, r, ans, x;
r = 2.0;
w = r / N;
ans = 0.0;
for(i = ; i <= N; i++) {
x = w * (i - 0.5);
ans += sqrt(r * r - x * x) * w;
}
printf("%f\n", ans);
}
int main()
{
solve();
return ;
}

《C程序设计的抽象思维》1.9编程练习的更多相关文章

  1. 20155324 《Java程序设计》实验五 网络编程与安全

    20155324 <Java程序设计>实验五 网络编程与安全 实验内容 任务一 编写MyBC.java实现中缀表达式转后缀表达式的功能 编写MyDC.java实现从上面功能中获取的表达式中 ...

  2. 20155326 《Java程序设计》实验五网络编程与安全实验报告

    20155326 <Java程序设计>实验五网络编程与安全实验报告 实验内容 任务一 1.两人一组结对编程: 参考http://www.cnblogs.com/rocedu/p/67667 ...

  3. 20155301 《Java程序设计》实验五网络编程与安全

    20155301 <Java程序设计>实验五网络编程与安全 实验内容 实验1: 两人一组结对编程:参考http://www.cnblogs.com/rocedu/p/6766748.htm ...

  4. 20155308 《Java程序设计》实验五 网络编程与安全

    20155308 <Java程序设计>实验五 网络编程与安全 实验内容 任务一 两人一组结对编程: 参考http://www.cnblogs.com/rocedu/p/6766748.ht ...

  5. 20155317 《Java程序设计》实验五网络编程与安全实验报告

    20155317 <Java程序设计>实验五网络编程与安全实验报告 遇到问题 在刚开始启动客户端或者服务端时,出现了一系列的错误情况,总是提示异常信息 后来经过询问同学,反应将端口号修改一 ...

  6. 20155320 《Java程序设计》实验五网络编程与安全实验报告

    20155320 <Java程序设计>实验五网络编程与安全实验报告 实验内容 实验一 1.两人一组结对编程: 参考http://www.cnblogs.com/rocedu/p/67667 ...

  7. 20155338 《JAVA程序设计》实验五网络编程与安全实验报告

    20155338 <JAVA程序设计>实验五网络编程安全实验报告 实验内容 实验一: •两人一组结对编程: •结对实现中缀表达式转后缀表达式的功能 MyBC.java •结对实现从上面功能 ...

  8. 20155339 《Java程序设计》实验五网络编程与安全实验报告

    20155339 <Java程序设计>实验五网络编程与安全实验报告 实验内容 实验一 1.两人一组结对编程: 参考http://www.cnblogs.com/rocedu/p/67667 ...

  9. 已看1.熟练的使用Java语言进行面向对象程序设计,有良好的编程习惯,熟悉常用的Java API,包括集合框架、多线程(并发编程)、I/O(NIO)、Socket、JDBC、XML、反射等。[泛型]\

    1.熟练的使用Java语言进行面向对象程序设计,有良好的编程习惯,熟悉常用的Java API,包括集合框架.多线程(并发编程).I/O(NIO).Socket.JDBC.XML.反射等.[泛型]\1* ...

  10. 《C程序设计的抽象思维》2.10编程练习(未完)

    本文地址:http://www.cnblogs.com/archimedes/p/programming-abstractions-in-c-2.html,转载请注明源地址. 2.按照规定求圆柱的表面 ...

随机推荐

  1. 【软件分析与挖掘】Vision of Software Clone Management: Past, Present, and Future (Keynote Paper)

    abstract: 代码克隆的综述 S1    INTRODUCTION AND MOTIVATION 代码克隆的利弊: 利:可以有效地去耦合,避免其他一些可能的错误: 弊:当被复制的那段code中带 ...

  2. 【原创】MYSQL++源码剖析——前言与目录

    终于完成了! 从第一次想写到现在真的写好大概花了我3个月时间.原来一直读人家的系列文章,总感慨作者的用心良苦和无私奉献,自己在心里总是会觉得有那么些冲动也来写一个. 最开始的麻烦是犹豫该选哪个主题.其 ...

  3. 扩展 IEnumerable<T>,让它根据另一个集合的顺序来排列

    假如我有两个集合: public class Teacher { public int Id { get; set; } public string Name { get; set; } } publ ...

  4. 【原创】C#搭建足球赛事资料库与预测平台(2) 数据库与XCode组件

            本博客所有文章分类的总目录:[总目录]本博客博文总目录-实时更新 开源C#彩票数据资料库系列文章总目录:[目录]C#搭建足球赛事资料库与预测平台与彩票数据分析目录  本篇文章开始将逐步 ...

  5. Tools - 常用搜索引擎命令

    site 用来查询网站收录量. 比如site:http://www.cnblogs.com/ inurl 查URL中包含的元素,比如inurl:bbs ,搜索出URL包含bbs的页面. 常用的inur ...

  6. [linux笔记]理清linux安装程序用到的(configure, make, make install)

    我作为一名经常和linux打交道的程序员,每次在linux安装软件都祈求可以用——apt-get,yum,brew等应用程序管理器安装,有的时候事与愿违,你只能自己编译安装-wtf,说好的美丽世界呢? ...

  7. ASP.NET在不同情况下实现单点登陆(SSO)的方法

    第一种:同主域但不同子域之间实现单点登陆 Form验证其实是基于身份cookie的验证.客户登陆后,生成一个包含用户身份信息(包含一个ticket)的cookie,这个cookie的名字就是在web. ...

  8. ThroughRain第二次冲刺总结

    团队名:ThroughRain 项目确定:<餐厅到店点餐系统> 项目背景:本次项目是专门为餐厅开发的一套订餐系统.大家有没有发现在节假日去餐厅吃饭会超级麻烦,人很多, 热门的餐厅基本没有座 ...

  9. Scrum4.0

    1.准备看板. 形式参考图4. 2.任务认领,并把认领人标注在看板上的任务标签上. 先由个人主动领任务,PM根据具体情况进行任务的平衡. 然后每个人都着手实现自己的任务. 3.为了团队合作愉快进展顺利 ...

  10. 树莓派配置静态ip

    #vim /etc/network/interfaces 修改为如下内容: auto eth0 iface eth0 inet static address 192.168.0.2 netmask 2 ...