学习目标:
学习《明解C语言》第3版
第一章
初始C语言
学习内容:
1-1 显示计算结果1-2 变量
1-3 输入与显示
学习时间:
2020年10月22日晚7-9时学习笔记
1-1显示计算结果
1.计算整数的和并显示结果
#include<stdio.h> //注意不要和studio混淆,stdio是standard I/O(标准输入输出)的缩写
int main(void)
{
printf("%d",15+37); /*用十进制数显示整数15和37的和*/
return 0;
}
基本程序和固定代码
#include<stdio.h>
int main(void)
{
/*...*/
return 0;
}
1.注释为/…/,可以把想要表达的意思以注释的形式记录下来。
2.printf函数:格式化输出函数
如果想要使用某个函数的功能,就必须通过函数调用(function call)来实现。
ex:调用printf函数显示15和37的和
函数调用:printf /函数名/ ( “%d” /实参/ , 15+37 /实参/);
显示结果为 52.
/*调用此函数既发出了“显示这些内容”的请求,然后通过括号内的实参(argument)来传递想要显示的内容。当实参超过两个时,需要用逗号隔开 */
/* 注意!! 原则上语句必须以分号结尾! */
2.换行的必要性
1-3
#include<stdio.h>
int main (void)
{
printf("15与37的和是%d。/n",15+37);
return 0;
}
1.%d指定了实参要以十进制数的形式显示,这就是转换说明(conversion specification)。
2.\n 是代表换行的符号,\ 和 n 组成的一个特殊的换行符。
/* 画面中不会显示\n,而是输入一个(看不见的)换行符。
!大多数运行环境下,程序执行后,程序的输入结果后面都会紧跟着提示符。若在程序后输入换行符,则不会紧跟着提示符。
练习1-1
/* 编写一段程序,计算出15减去37的结果,并以“15减去37
的结果时-22。”的格式进行显示。*/
#include <stdio.h>
int main (void)
{
printf("15减去37的结果是%d\n",15-37);
return 0;
}
练习1-2
/* 换行显示天地人 */
#include <stdio.h>
int main(void)
{
printf("天\n地\n人\n");
return 0;
}
练习1-3
/* 换行表示喂!您好!再见! */
#include <stdio.h>
int main(void)
{
printf("喂!\n\n您好!\n再见。");
return 0;
}
1-2 变量
1.为两个变量赋整数值并显示
#include<stdio.h>
int main(void)
{
int vx,vy;
vx= 57;
vy = vx + 10;
printf("vx的值是%d。\n",vx);
printf("vy的值是%d。\n",vy);
return 0;
}
int vx ; /*变量 */
int vy ; /*变量 */
声明两个变量。
vx = 54;
vy = vx +10;
为两变量赋值。
2.初始化和赋值
初始化:在生成变量的时候放入数值。
赋值:在意生成的变量中放入数值。
细的 = 表示初始化,粗体的 = 表示赋值。
练习1-4
/* 在int型变量的声明中为变量赋一个实数值的初始值
(如3.14或5.7等)会怎样? */
#include <stdio.h>
int main(void)
{
int x = 3.14;
printf("%d",x);
return 0;
}
1-3 输入和显示
1.格式化输入函数scanf
#include<stido.h>
int main(void)
{
int no;
pritnf("请输入一个整数:");
scanf("%d",&no); //和printf不同,此处需要使用&!!!
printf("您输入的是%d。\n",no);
return 0;
}
与printf函数不同的是,在使用scanf函数进行读取时,变量名前必须加上一个特殊符号&!
// printf("%d",no) //scanf("%d",&no)
练习1-5
/* 读取一个整数并显示该整数加上12之后的结果。 */
#include <stdio.h>
int main(void)
{
int no;
printf("请输入一个整数:");scanf("%d",&no);
printf("该整数加上12的结果是%d。", no + 12);
return 0;
}
练习1-6
/* 读取一个整数并显示该整数减去6之后的结果 */
#include <stdio.h>
int main(void)
{
int no;
printf("请输入一个整数:");scanf("%d",&no);
printf("该整数减去6的结果是%d",no - 6);
return 0;
}
2.输出函数puts
#include<stdio.h>
int main(void)
{
int n1,n2;
puts("请输入两个整数。");
printf("整数1:");scanf("%d",&n1);
printf("整数2:");scanf("%d",&n2);
printf("它们的和是%d。\n", n1+n2);
return 0;
}
puts("…")与printf("…\n")的功能基本相同。
puts函数可以按顺序输出作为实参的字符串,并在结尾换行。
// puts函数的实参只能有一个。且符号%的显示方法和printf函数有所不同。
练习1-7
/* 用puts函数输出天地人 */
#include <stdio.h>
int main(void)
{
puts("天");
puts("地");
puts("人");
return 0;
}
练习1-8
/* 显示读取到的两个整数27与35的乘积。 */
#include <stdio.h>
int main(void)
{
int a,b;
puts("请输入两个整数。");
printf("整数1:");
scanf("%d",&a);
printf("整数2:");
scanf("%d",&b);
printf("它们的乘积是%d",a * b);
return 0;
}
练习1-9
/* 显示读取到的三个整数的和 */
#include<stdio.h>
int main(void)
{
int a,b,c;
puts("请输入三个整数");
printf("整数1:");scanf("%d",&a);
printf("整数2:");scanf("%d",&b);
printf("整数3:");scanf("%d",&c);
printf("它们的和是%d",a+b+c);
return 0;
}