笔试题
- 编程大概有几个步骤
- C语言中链接器的目的是什么
- 什么是语法错误,举一个语文例子和一个C语言例子
- 什么是语义错误,举一个语文例子和一个C语言例子
- 山山子编写了以下程序,想征求你的意见,请你帮她评定
#Incloude <stdio.h>
Int main(v0id){
Int s
S=56;
Printf(“一年有 %S 周”);
raturn 0;
编程练习题
- 编写一个程序,输出以下内容
———————————————————
御姐,萝莉、傲娇,三无
傲娇,三无
御姐,萝莉
————————————————————
除了main()函数以外,该程序还需要调用两个自定义函数,一个为ld(),调用一次萝莉和御姐出没一次,另一个为tt(),调用一次傲娇和三无出没一次,其他内容在main()中完成。
- 在C语言中,函数可以互相调用,子子孙孙无穷尽也。编写一个程序,调用一个名为”Ye()“的函数,该函数在一行打印单词“爷”,再调用第二个函数“father()”,然后在一行打印“儿子!”,然后father()函数再调用son()函数,son()函数打印”孙子!”。在三个函数开始之前要打印短语“开始生”,三个函数都执行完毕后,打印“生完了”。
参考答案:
- 按大家的说法,有七步:
- 定义程序目标 设计程序 3. 编写程序 4. 编译程序 5. 运行程序 6. 测试与调试程序 7. 维护与修改程序。
但我更倾向于简化为:1、目标和实现规划 2、编写 3、测试与维护修改
费曼说过,如果你不能用简单的语言描述你学过的知识,那你就没有真正学会它。
- 链接器将编译器形成的中间代码,编译系统原有的系统库代码和一些第三方代码合并,形成目标平台的可执行文件。
孤山个人目前是这样认为的,中间代码编译好了,不还有引用的库(比如stdio.h)吗?把库插进去,才能保证引用功能的正常运行,再把在某个系统运行必须的文件也插进去,就完成了。当然只是我自己的想法
- 语法错误在语文和C语言中都比较容易发现,举几个例子:
吃了汉堡我 i int = 100; 位置错误
他那和蔼可亲的笑容,循循善诱的教导,时时出现在我眼前 printf(“%c”,scanf(“%s”,&i));搭配不当
你吃反了吗 scannf(“%s”,aa); 拼写错误
- 语义错误是指语法没有错误但是无意义的句子。
变形虫锯完木头再打鼾 printf();
海洋里冰露应该得病了 int i = i + 1 – 1;
- 看来山山子没有好好听课,程序漏洞百出。
第一行Incloude应为include,stdio.h应改为<stdio.h>
第二行(v0id)改为(void)或()
第三行的声明和第四行赋值的名称不一样,应统一大小写
第五行错把变量类型当成变量名称,因此也没有写后面的实参参数,应改为Printf(“一年有 %d 周”, S);
第六行拼写错误,改为return 0;
第七行没有大括号。
待会就打山山子的屁股(* ̄︿ ̄)
6、出这道题的人很正经
#include <stdio.h>
int tt(void);
int ld(void);
int main(void) {
ld();
printf(“,”);
tt();
printf(“\n”);
tt();
printf(“\n”);
ld();
return 0;
}
int tt(void) {
printf(“傲娇,三无”);
return 0;
}
int ld(void) {
printf(“御姐,萝莉”);
return 0;
}
嘿嘿,黑丝~我的黑丝御姐(′▽`〃),嘿嘿嘿
(这人没救了)
7、
#include <stdio.h>
void ye(void);
void father(void);
void son(void);
int main(void) {
printf(“开始生\n”);
ye();
printf(“生完了”);
return 0;
}
void ye(void) {
printf(“爷!\n”);
father();
}
void father(void) {
printf(“儿子!\n”);
son();
}
void son(void) {
printf(“孙子!\n”);
}
//哄堂大孝
_______________________________________________________________________________
题外话
这些题是我根据《c primer plus》这本书上的题改编的,如果有点基础的话这本书还是不错的。目前在我看来,数学还有计算机类的书,尤其是教科书,中国目前有待提高,最好要把学生当傻子教。
同济版的《线性代数》只有垫桌脚的份(ノ-_-)ノ~┻━┻