Ch1. Intro to Programming
1-1 Input three integers and output the average number. Keep three decimal places.
#include<stdio.h>
//#include<math.h>
int main()
{
int a, b, c;
scanf("%d%d%d",&a,&b,&c);
printf("%.3f\n", (a+b+c)/3.0);
}
1-2 Input Fahrenheit temperature f, output the centigrade degree c. Keep three decimal places. Hint: c=5(f-21)/9.
#include<stdio.h>
#include<math.h>
int main()
{
float f,c;
scanf("%f",&f);
c=*(f-)/;
printf("%.3f\n", c);
}
1-3 Input a positive integer n, output the value of 1+2+3+...+n.
Hint: Solve the problem rather than exercise programming.
#include<stdio.h>
//#include<math.h>
int main()
{
int n,sum;
sum=;
scanf("%d", &n);
/*if(n == 1)
printf("1\n");
else */
{
for(int i=; i<=n; i++)
sum=sum+i;
printf("%d\n", sum);
} }
1-4 Input positive integer n (n<360), output the sin and cos value of n.
Hint: Use math functions.
#include<stdio.h>
#include<math.h>
int main()
{
int n;
scanf("%d", &n);
printf("%f %f\n", sin(n), cos(n));
}
1-5 A piece of clothes costs 95 yuan, and if the amount adds up to 300 yuan, it will have a 85% discount. Input the sales number of clothes and output the money one should pay (yuan). Keep two places of decimal.
#include<stdio.h>
//#include<math.h>
int main()
{
int n;
float total;
scanf("%d", &n);
total=n*;
if (total<)
printf("%.2f\n", total);
else
printf("%.2f\n", total*0.85);
}
1-6 Input three lengths of a triangle (all possitive integers), and determine whether they can be three sides of a triangle. If so, output yes; otherwise, output not a triangle.
#include<stdio.h>
//#include<math.h>
int main()
{
int a,b,c;
scanf("%d%d%d", &a, &b, &c);
if ((a+b>c) && (a+c>b) && (b+c>c))
printf("yes");
else
printf("not a triangle");
return ;
}
1-7 Input a year and determine if it is a leap year. If yes, output yes; otherwise, output no.
#include<stdio.h>
//#include<math.h>
int main()
{
int n;
scanf("%d", &n);
if ((n% == ) || ((n% == ) && (n% != )))
printf("yes");
else
printf("no");
return ;
}
Q1 What's the minimum and maximum number of int integers? (give accurate number)
#include<stdio.h>
//#include<math.h>
int int_min()
{
int n=, i=;
while(n>=i)
{
n=i;
i--;
}
return n;
}
int int_max()
{
int n=, i=;
while(n <=i)
{
n=i;
i++;
}
return n;
} int main()
{
printf("%d\n", int_min());
printf("%d\n", int_max());
}
Q2 How actuate decimal places can double floats can be? Or, is it a right question?
#include<stdio.h>
//#include<math.h>
int main()
{
double i =1.0, j = 3.0;
printf("%.500f\n", i/j);
return ;
}
Ref. https://www.zhihu.com/question/36662447/answer/68630339
It shows 0.333333333333333310000000000... (sixteen 3s ) so, there are maximum 16 decimal places in a double float. And a double float can not acturately describe decimals.
Q3 What's the minimum and maximum positive integer of double floats? (no need to give accurate numbers)
(I don't know...)
Ref. http://blog.csdn.net/architect19/article/details/8551145
http://www.faceye.net/search/87209.html
Not working through...
Q4 What's the precedence of these logical operators, "&&", "||", and "!" ? How do you interpret a&&b||c ?
"&&" and "||"at the same precedence level, and are operated from left to right.
#include<stdio.h>
//#include<math.h>
int main()
{
int a=, b=,c=;
printf("%d", b&&c||a);
return ;
}
It shows 1.
"!" has higher priority than "&&" and "||" .
#include<stdio.h>
//#include<math.h>
int main()
{
int a=, b=,c=;
printf("%d", !b&&c||a);
return ;
}
It shows 1.
#include<stdio.h>
//#include<math.h>
int main()
{
int a=, b=,c=;
printf("%d", !(b&&c||a));
return ;
}
It shows 0.
Q5 What's the accurate meaning of if(a) if(b) x++; else y++? The else matches which if? Any accturate way to express the match?
The esle matches the second if.
#include<stdio.h>
int main()
{
int a, b,x, y;
if(a){
if (b)
x++;
else
y++;
}
return ;
}
Use braces to enclose a series of codes following if(a).
Ch1. Intro to Programming的更多相关文章
- The Go Programming Language. Notes.
Contents Tutorial Hello, World Command-Line Arguments Finding Duplicate Lines A Web Server Loose End ...
- <转载>国外程序员推荐的免费编程书籍资源
一.George Stocker 提供了一大串,分类如下: How to Design Programs: An Introduction to Computing and Programming 2 ...
- 转:Google技术开发指南:给大学生自学的建议
原文来自于:http://blog.jobbole.com/80621/ 技术开发指南 想要成为成功的软件工程师,必须拥有坚实的计算机科学的基础.本指南针对大学生,给出一条自学途径,让学生以科班和非科 ...
- [转]ORACLE递归查询
转自:http://www.oracle.com/technetwork/cn/articles/hartley-recursive-086819-zhs.html 递归数据库处理,也称为材料清单 或 ...
- [日常] Go语言圣经-匿名函数习题
Go语言圣经-匿名函数1.拥有函数名的函数只能在包级语法块中被声明,通过函数字面量(function literal),我们可绕过这一限制,在任何表达式中表示一个函数值2.通过这种方式定义的函数可以访 ...
- Github上的1000多本免费电子书重磅来袭!
Github上的1000多本免费电子书重磅来袭! 以前 StackOverFlow 也给出了一个免费电子书列表,现在在Github上可以看到时刻保持更新的列表了. 瞥一眼下面的书籍分类目录,你就能 ...
- Google Careers 程序员必修课
quote from : https://www.google.com/about/careers/students/guide-to-technical-development.html Techn ...
- Github 的一个免费编程书籍列表
Index Ada Agda Alef Android APL Arduino ASP.NET MVC Assembly Language Non-X86 AutoHotkey Autotools A ...
- 世界名校网络课程大盘点,美国大学CS专业十三大研究方向,世界50所知名大学提供开放课程
世界名校网络课程大盘点 加州大学伯克利分校http://webcast.berkeley.edu/ 加州大学伯克利分校与斯坦福大学. 麻省理工学院等一同被誉为美国工程科技界的学术 领袖,其常年位居 ...
随机推荐
- Extjs6(二)——用extjs6.0写一个系统登录及注销
本文基于ext-6.0.0 一.写login页 1.在view文件夹中创建login文件夹,在login中创建文件login.js和loginController.js(login.js放在class ...
- CF 690C3. Brain Network (hard) from Helvetic Coding Contest 2016 online mirror (teams, unrated)
题目描述 Brain Network (hard) 这个问题就是给出一个不断加边的树,保证每一次加边之后都只有一个连通块(每一次连的点都是之前出现过的),问每一次加边之后树的直径. 算法 每一次增加一 ...
- Java设计模式:代理模式(二)
承接上文 三.计数代理 计数代理的应用场景是:当客户程序需要在调用服务提供者对象的方法之前或之后执行日志或者计数等额外功能时,就可以用到技术代理模式.计数代理模式并不是把额外操作的代码直接添加到原服务 ...
- 容器 What, Why, How - 每天5分钟玩转容器技术(6)
学习任何东西都可以按照3W的框架进行,容器技术也是一样,先回答 What.Why 和 How 这三个问题. What - 什么是容器? 容器是一种轻量级.可移植.自包含的软件打包技术,使应用程序可以在 ...
- 保证Android后台不被杀死的几种方法
由于各种原因,在开发Android应用时会提出保证自己有一个后台一直运行的需求,如何保证后台始终运行,不被系统因为内存低杀死,不被任务管理器杀死,不被软件管家等软件杀死等等还是一个比较困难的问题.网上 ...
- python基本数据类型——set
一.集合的定义 set集合,是一个无序且不重复的元素集合. 集合对象是一组无序排列的可哈希的值,集合成员可以做字典中的键.集合支持用in和not in操作符检查成员,由len()内建函数得到集合的基数 ...
- 在Delphi下使用迅雷APlayer组件进行免注册开发
之前都是用的delphi下的dspack进行的视频开发,这个组件其实很好用,就是找解码器麻烦点,而且还得在客户的计算机上使用RegSvr32.exe也注册解码器,要不有可能播放不了. 结果在查找合适的 ...
- SpringMVC结合ajaxfileupload文件无刷新上传
jQuery没有提供ajax的文件上传,我们可以通过ajaxfileupload实现ajax文件的上传.其实ajaxfileupload文件上传特别的简单.下面就演示一下在SpringMVC中实现aj ...
- Python:学会创建并调用函数
这是关于Python的第4篇文章,主要介绍下如何创建并调用函数. print():是打印放入对象的函数 len():是返回对象长度的函数 input():是让用户输入对象的函数 ... 简单来说,函数 ...
- C#中在比较自定义对象的时候要重写Equals方法
using System;using System.Collections.Generic;using System.Text; namespace Equal{ using System; c ...