第一次作业解析

Posted 小奔同学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第一次作业解析相关的知识,希望对你有一定的参考价值。

第一次作业解析

目录

发现了没有,排版好了很多哈哈哈,小奔我在学习,你们也在学习,小奔我会努力带来更好的内容


前往第二次作业


一、💥

跳转到目录

下面哪个不是C语言内置的数据类型:
A.char
B.double
C.struct Stu
D.short

🎸C

c语言是有数据类型的,我们来列一下
数据类型:
内置的:(就是c语言本身就带有的)
char
short
int
long
float
……
自定义的:(就是c语言本身就没有的,是自己创造出来的)
结构体struct
枚举
联合
……
上面只有struct Stu不是内置的,选C


二、💥

跳转到目录

局部变量的作用域是:
A.main函数内部
B.整个程序
C.main函数之前
D.局部变量所在的局部范围

🎸D

这个题在说局部变量的作用域,主要的问题就是A选项,为什么A不对呢?我们来演示一下:

int Add(int x, int y)

	int z = 0;
	z = x + y;
	return z;


int main()

	int a = 10;
	int b = 20;
	int c = Add(a, b);
	return 0;

我们可以看到Add这个函数里面的局部变量z不是在main函数内部的,但你们会疑问明明还有一个Add在main函数内部,外面的Add不就是main函数里面的Add吗?所有外面Add里面的变量z不就是在卖弄函数里面嘛?

我们会理解成这样的:

其实需要这样理解:

老师给我说:main函数不是有自己的栈帧(应该理解为空间,小奔我还没学到)嘛,那我们在运行这个程序的时候,给main函数栈帧开辟多少空间比较合适呢?我们肯定是以已有的内容来开辟空间,但是我们不停地套函数,对于我们编译器而言,它不清楚该给这个main函数开辟多少空间了,所以就让函数都有自己的栈帧,你调用一个函数,就开辟一个其他的栈帧,所以那个变量z、其实是不在main函数里面的,就是这样理解


三、💥

跳转到目录

下面代码输出的结果是:( )
A.程序有问题,不能编译
B.输出1
C.输出10
D.输出0
#include <stdio.h>
int num = 10;
int main()

    int num = 1;
    printf("num = %d\\n", num);
	return 0;	

🎸B

这个考察的是全局变量和局部变量谁会起作用
之前在变量那个博客里面讲过:当局部变量和全局变量同名时,局部变量优先使用,不会发生冲突
所以输出的结果是局部变量1,选B


四、💥

跳转到目录

注册gitee并提交提1次写的代码:
gitee地址:gitee
gitee教程:鹏哥的详细教程
给自己的gitee上整一个绿点
如果有同学想尝试github也行:
github地址:github(这个慢,不太方便)
教程:鹏哥c语言

这个嘛,没答案,不过这个gitee就是小奔我的答案,这个要看你自己的答案是什么,小奔我在分享自己的学习过程,嘿嘿,一起进步啦


五、💥

跳转到目录

注册博客,写第一篇博客:

  1. 注册一个技术博客,可以是:CSDN,简书,51CTO等技术博客网站。
  2. 写个人第一篇博客,谈谈以下内容
    a. 写一个自我介绍;
    b. 列出你编程的目标;
    c. 你打算怎么学习编程?
    d. 你打算在学习编程这件事上每周花费多少时间?
    e. 你最想进入的一家IT公司。
    博客注意事项:
    博客内容中,不要太学生气,不要提跟着我学习。
    写博客是写文章,不是完成作业。
    写博客要注意条理,文章是给读者看的,要让读者有收获,这样才能有很好的访问量。

这个嘛,没答案,不过从最开始你看的那些博客都是小奔我的答案,这个要看你自己的答案是什么,小奔我在分享自己的学习过程,并在不断的改进小奔我博客的质量,从最初的博客开始看的人都是可以看出来的,嘿嘿,一起进步啦


六、💥

跳转到目录

实践一下:
BC6 小飞机
小飞机

🎸小奔的答案:(有其他的答案更好)

#include<stdio.h>
int main()

    printf("     **\\n");
    printf("     **\\n");
    printf("************\\n");
    printf("************\\n");
    printf("    *  *\\n");
    printf("    *  *\\n");
    return 0;


七、💥

跳转到目录

BC32 输出学生信息
输出学生信息

🎸小奔的答案:(有其他的答案更好)

#include<stdio.h>

int main()

    printf("Name    Age    Gender\\n");
    printf("---------------------\\n");
    printf("Jack    18     man");
    return 0;


八、💥

跳转到目录

BC31 发布信息
发布信息

🎸小奔的答案:(有其他的答案更好)

#include<stdio.h>

int main()

    printf("I lost my cellphone!");
    return 0;


九、💥

跳转到目录

BC17 计算表达式的值
计算表达式的值

🎸小奔的答案:(有其他的答案更好)

#include<stdio.h>

int main()

    int a=40;
    int c=212;
    int b=(-8+22)*a-10+c/2;
    printf("%d",b);
    
    return 0;

小奔的建议

最后四道题都是在线完成的题目,这种方式叫在线OJ
OJ就是online judge,在线判题
这种方式现在是非常流行
很多互联网公司在笔试环节都采用在线OJ的形式
所以我们要去习惯这种写代码的方式,你写错了它会报错,你要根据报错来判断哪里出错了,这个我们必须要去训练一下(牛客网

在线OJ分为两类:
1.IO型
所有代码都是自己完成和实现
包括输入,计算,输出……
2.接口型
只需要完成一个函数,其他需要的数据都是已经准备好的

第一次作业解析结束

以上是关于第一次作业解析的主要内容,如果未能解决你的问题,请参考以下文章

软件工程第一次作业

第一次作业 王嘉岩

经验分享丨零基础第一次接触C语言,应该怎么上手?

经验分享大学C语言入门到底怎么学才可以走捷径?

经验分享学习 C/C++ 编程语言的常用开发工具下载!(汇总)

我的第一次作业