博客作业1
| 这个作业属于哪个班级 | C语言--网络2011/2012 |
| ---- | ---- | ---- |
| 这个作业的地址 | C博客作业00--我的第一篇博客 |
| 这个作业的目标 | 学习Makdown语法,对本专业及C语言课程有个简单了解,记录自学慕课视频的笔记。教师可以对学生有个初步的认识。 |
1.谈谈你对网络专业或者计算机专业了解是怎样?
- 计算机专业是当前比较靠谱的专业,现在的年轻人也更多地选择计算机进行深造,为的是将来更好的适应社会的发展,了解更多的计算机技术。
- 在知乎中,我了解到网络工程专业涉及的领域相当的广,需要我们沉淀大量的知识。编程.路由.交换,是计算机网络的基本,这方面的知识多多少少都要知道一点。
网络工程师
2.谈谈你对C语言的理解?
- 在暑假,我就通过慕课初步认识到c语言是影响最大,寿命最长的程序设计语言。C语言是一种高级语言,但它并不高级,实际上是一种介于高级语言和低级语言的一种语言,运行效率高。学好c语言是学习流行语言的基础,了解程序的基本思想。
慕课
3.你希望在这个专业学到哪些内容?大学学习生活时间要怎么安排?
- 我希望在大一中可以将公共基础课程c语言.高数.英语等学好,将这个专业基础课程如线性代数.汇编语言程序设计.计算机组成原理与系统结构等学精,为了以后学习打下夯实的基础,并且实现在未来能够凭借自己的能力为这个社会做出贡献,能够在社会上实现自立。
- 在大一中,除去吃饭睡觉的时间,我希望大学中学习:社团:娱乐时间为5:2:3。
4.我目前自学的内容
4.0关于c的变量名
- 良好的编程习惯是程序员一个基本的素质。编写一个可读性高的程序可以提高团队执行的效率。
4.1分支结构
- 分支结构的语法有
if(单分支).if else(双分支)和else if(多分支)。
if (表达式1)
{
语句A
}
else if (表达式2)
{
语句B
}
else if (表达式3)
{
语句C
}
else
{
语句D
}
- 分支结构可以实现计算两个数的最大值.求函数的最大值.求正整数是否为偶数等等。
- 不清楚分支结构如何在实际情况的运用。
- 求正整数是否为偶数:
#include <stdio.h>
int main()
{
int a;
scanf("%d", &a);
if(a % 2 == 0)
printf("yes");
else
printf("no");
return 0;
}
4.2循环结构
- 循环结构的语法有for.while.do while。
for (表达式1; 表达式2; 表达式3)
{
语句1
语句2
}
其中表达式1为循环初始条件,
表达式2为循环控制条件,
表达式3为循环转换条件。
表达式1;
while (表达式2)
{
语句1
语句2
表达式3;
}
其中表达式1为循环初始条件,
表达式2为循环控制条件,
表达式3为循环转换条件。
表达式1;
do {
语句1
语句2
表达式3;
}while(表达式2);
其中表达式1为循环初始条件,
表达式2为循环控制条件,
表达式3为循环转换条件。
- 循环结构可以实现计算前n项的表达式.在一定范围内寻找满足一定要求的值等。
- 不清楚循环结构如何在实际情况的运用
- 计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和。
#include <stdio.h>
#include <math.h>
int main()
{
int n;
int x = 1;
int y = 1;
int z = 0;
double sum = 0;
scanf("%d", &n);
for (x = 1, y = 1; y <= n; y++, x += 2,++z)
{
sum += y * 1.000 / x * pow(-1, z);
}
printf("%.3f", sum);
return 0;
}
4.3函数
- 函数可以实现信息的隐藏并且便于实现函数的复用和模板块编程。
- 计算
#include <stdio.h>
#include<math.h>
double mysqrt(double n)
{
return sqrt(n);
}
int mypow(int m)
{
return pow(m,2);
}
int main()
{
double a, b, term, c;
scanf("%lf", &a);
b = a + 1;
term = pow(b,2);
if (a >= 0)
c = mysqrt(a);
else
c = term + 2 * a + 1 / a;
printf("f(%.2f) = %.2f", a, c);
return 0;
}
4.4c的运算符和表达式
- 在算数的除法中,如果整形变量的式子中得出一个浮点数会导致数据精度的缺失,可使用强制转换进行运算。
- 在求余的过程中,结果的符号会因被除数和除数的不同而不同。
#include <stdio.h>
int main()
{
int a, b, c;
scanf("%d %d", &a, &b);
c = a % b;
printf("%d\n", c);
scanf("%d %d", &a, & b);
c = a % b;
printf("%d", c);
return 0;
}
- 赋值不等同于数学中的等号,具有方向性,并且要注意左值和右值的类型一致。
- 使用增一减一运算符时注意前后缀带来的影响。
- 注意自动类型转换并在一定的情况使用强制类型转换。
4.5数据的输入与输出
- printf的格式修饰符():
1 .l/h加d.u前输出long型.short型。
2 .%mf,m为数据的最小宽域,左对齐右补空格。
3 .%.nf,n表示浮点数输出n位小数。 - 用空格.tab或回车分割输入数据。
4.6关系运算符和逻辑运算符
- 运算级:逻辑非>算数运算符>关系运算符>逻辑与>逻辑或
4.7分支控制
- 在分支中使用复合语句可以使代码结构更清晰。