网易云课堂程序设计入门--C语言第一周 简单的计算程序学习笔记
2016-11-23 10:03
477 查看
第一周 简单的计算程序
标签(空格分隔): 程序设计入门—C语言下载Dev C++的地方是:
http://sourceforge.net/projects/orwelldevcpp/?source=directory
1.1第一个程序
程序框架#include<stdio.h> int main(){ return 0; }
本课程中所有的程序都需要这一段,直到学函数之前,我们的代码都只是在这个框架中间
输出
printf("Hello world!\n");\n表示需要再输出的结果后面换一行
对C语言,换行不意味任何东西
C语言编译器给出的错误提示往往不那么好猜
做计算
printf("12+34=%d\n",12+34);%d说明后面有一个整数要输出在这个位置上
1.2变量
算找零 需要:1有地方输入数字 2有办法输入数字 3输人的数字能参与运算change.c
int price = 0; //定义一个变量,变量名是price,类型是int,初始值是0 printf("请输出金额(元):"); scanf("%d", &price); int change = 100-price; printf("找您%d元。\n",change);
如何输入:输入也是在终端窗口中,输入是以行为单位进行的,行结束的标志就是你按下了回车,在你按下回车之前程序不会读到任何东西
变量是一个保存数据的地方,当我们需要在程序里保持数据时,就需要一个变量来保存它。用一个变量保存了数据,它才能参与到后面的计算中。
变量的定义:一般形式 <类型名称><变量名称>;
int a = 0; int a, b;
变量的名字
变量需要一个名字,变量的名字是一种“标识符”,意思是它是用来识别这个和那个不同的名字
标识符的构造规则。基本原则:标识符只能由字母、数字和下划线组成,数字不可以出现在第一个位置上,C语言的关键字(有的地方叫保留字)不可以用做标识符
变量赋值和初始化
定义变量时的赋值叫做初始化
虽然C语言并没有强制要求所有的变量都在定义的地方做初始化,但所有的变量在第一次使用之前应被赋值一次
若未初始化,内存里面是什么就是什么
<类型名称><变量名称>=<初始值>;
int price =0; int price =0, mount =100;
变量类型
C语言是一种有类型的语言,所有的变量在使用之前必须定义或声明,所有的变量必须具有确定的数据类型。数据类型表示在变量中可以存放什么样的数据,变量中只能存放指定类型的数据,程序运行过程中也不能改变变量的类型
C99允许在程序任何地方定义变量
ANSI C只能在代码开头的地方定义变量
读整数 scanf(“%d”,&price); f表示format(格式化)
要求scanf这个函数读入下一个整数,读到的结果赋值给变量price
小心前面的&
常量 int change = 100-price;
固定不变的数,是常数,直接写在程序里,我们称作直接量literal
更好的方式是定义一个常量 const int AMOUNT = 100; C99!
const变量一般大写
const
const是一个修饰符,加在int前面,用来给这个变量加上一个const(不变的)属性,这个const属性表示这个变量的值一旦初始化就不能再修改了 int change =AMOUNT-price;
如果你试图对常量做修改,把它放在赋值运算符的左边,就会被编译器发现,指出为一个错误。
plus.c
int a; int b; printf("请输入两个整数;"); scanf ("%d %d",&a,&b), printf("%d + %d = %d\n",a,b,a+b);
1.3计算
身高5尺7寸: (5+7/12)*0.3048=1.7018米浮点数 单精度float 双精度double –>输入%lf输出%lf
两个整数的运算结果只能是整数
10/3*3=9 小数部分丢掉 10.0/3*3=10
10和10.0在C中是完全不同的数
int main() { printf("请分别输入身高的英尺和英寸," "如输入\"5 7\"表示5英尺7英寸:"); double foot; double inch; scanf("%lf %lf", &foot, &inch); printf("身高是%f米。\n", ((foot+inch/12)*0.3048) ); return 0; }
数据类型
* 整形 int printf(“%d”,…); scanf(“%d”,…);
* 带小数点的数 double printf(“%f”,…); scanf(“%lf”,…);
表达式 一个表达式是一系列运算符合算子的组合,用来计算一个值
运算符 operator是指进行运算的动作,比如加法运算符“+”,减法运算符“-”
算子 operands是指参与运算的值,可能是常数,也可能是变量,还可能是一个方法的返回值
计算时间差
问题解决会得到什么数据
有了数据之后怎么计算
输入两个时间,每个时间分别输入小时和分钟的值,然后输出两个时间的差,也以几小时几分钟表示
#include <stdio.h> int main() { int hour1, minute1; int hour2, minute2; scanf("%d %d", &hour1, &minute1); scanf("%d %d", &hour2, &minute2); int t1 = hour1 * 60 + minute1; int t2 = hour2 * 60 + minute2; int t = t2 - t1; printf("时间差是%d小时%d分钟", t/60, t%60); return 0; }
求平均值
写一个程序,读入两个整数,输出他们的平均数
int main() { int a, b; scanf("%d %d", &a, &b); double c = (a+b)/2.0; printf("%d和%d的平均值是%f\n", a, b, c); return 0; }
优先级
优先级 | 运算符 | 运算 | 结合关系 | 举例 |
---|---|---|---|---|
1 | + | 单目不变 | 自右向左 | a*+b |
1 | - | 单目取负 | 自右向左 | a*-b |
2 | * | 乘 | 自左向右 | a*b |
2 | / | 除 | 自左向右 | a/b |
2 | % | 取余 | 自左向右 | a%b |
3 | + | 加 | 自左向右 | a+b |
3 | - | 减 | 自左向右 | a-b |
4 | = | 等于 | 自右向左 | a=b |
int a = 6; int b; int c = 1+(b=a);
不利于阅读,容易产生错误
第一周编程题
逆序的三位数
题目内容:程序每次读入一个正三位数,然后输出逆序的数字。注意,当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。输入格式:每个测试是一个3位的正整数。
输出格式:输出逆序的数。
输入样例:123
输出样例:321
时间限制:500ms内存限制:32000kb
#include<stdio.h> int main() { int num; scanf("%d",&num); int a=num/100; int b=num/10%10; int c=num%10; int m=c*100+b*10+a; printf("%d",m); }
三个数的最大值
#include<stdio.h> int main() { int a,b,c; scanf("%d %d %d",&a,&b,&c); printf("%d %d %d \n",a,b,c); if (b>a) a=b; if (c>a) a=c; printf("%d",a); }
相关文章推荐
- 网易云课堂程序设计入门--C语言 第二周 判断 学习笔记
- 网易云课堂程序设计入门--C语言第七周:指针与字符串学习笔记
- 【JavaEE学习笔记】Servlet_01_入门,简单的Servlet程序
- ROR 学习笔记系列二 基于ROR的简单Hello World程序入门
- python最简单的小程序-计算行车时间-学习笔记6
- python设计的最简单小程序-学习笔记5-计算饭费
- java入门程序100例学习笔记(007车牌号计算)
- 分支程序设计01 - 零基础入门学习C语言10
- 分支程序设计04 - 零基础入门学习C语言13
- 顺序程序设计01 - 零基础入门学习C语言07
- 分支程序设计04 - 零基础入门学习C语言13
- 学习51笔记与一份从网上找的资料:单片机C语言中_nop_函数的使用及C语言的延时计算2010-
- 入门篇-学习点滴之最简单的Linux关机命令程序
- 分支程序设计06 - 零基础入门学习C语言15
- 分支程序设计05 - 零基础入门学习C语言14
- 循环控制结构程序01 - 零基础入门学习C语言16
- 分支程序设计03 - 零基础入门学习C语言12
- 顺序程序设计02 - 零基础入门学习C语言08
- Linux程序设计-学习笔记-第二章shell程序设计
- 顺序程序设计03 - 零基础入门学习C语言09