题王网让考试变得更简单
扫码关注题王,更多免费功能准备上线!
计算机程序设计基础(C语言)
1. C语言程序是由构成的。
A)一些可执行语言 B)main函数C)函数 D)包含文件中的第一个函数
2. 是构成C语言程序的基本单位。
A)函数 B)过程 C)子程序 D)子例程
3.C语言可执行程序从开始执行。
A) 程序中第一条可执行语句 B) 程序中第一个函数
C) 程序中的main函数 D) 包含文件中的第一个函数
4.C语言程序从main()函数开始执行,所以这个函数要写在____。
A) 程序文件的开始 B) 程序文件的最后
C) 它所调用的函数的前面 D) 程序文件的任何位置
5. 以下说法中正确的是。
A)C语言程序总是从第一个定义的函数开始执行
B)在C语言程序中,要调用的函数必须在main( )函数中定义
C)C语言程序总是从main( )函数开始执行
D)C语言程序中的main( )函数必须放在程序的开始部分
6. 下列方法中错误的是。
A)主函数可以分为两个部分:主函数说明部分和主函数体。
B)主函数可以调用任何非主函数的其它函数。
C)任何非主函数可以调用其它任何非主函数。
D)程序可以从任何非主函数开始执行。
7.下列关于C语言的说法错误的是。
A) C程序的工作过程是编辑、编译、连接、运行
B) 标识符的命名由英文字母、数字和下划线组成,与字母的大小写无关
C) C程序的三种基本结构是顺序、选择、循环
D) 一个C程序总是从main函数开始执行的
8. 系统默认的C语言源程序扩展名为.C,需经过之后,生成.exe文件,才能运行?
9.下列说法中正确的是。
A)由于C源程序是高级语言程序,因此一定要在TC软件中输入。
B)由于C源程序是由字符流组成的,因此可以作为文本文件在任何文本编辑的软件中输入。
C)由于C程序是高级语言程序,因此输入后即可执行。
D)由于C程序是高级语言程序,因此它是由命令组成的。
大家看看下面几个代码:
两个代码唯一的区别就是定义串s时不同?
对于strrev()函数也出现这个问题,为啥?
因为strtok会修改原来的字符串,去掉第一个分隔之前的东西。
所以要求参数是char *。但是你的第一个程序中,有一个bug:
这么写,就直接不能通过编译了。
记住,常量区的东西是不能修改的。
关键就是这里并没有字符串的拷贝操作,只有地址的拷贝操作,所以要想修改这个字符串的值,你必须把这个字符串的内容拷贝到你的字符串中来,如同在楼上改进的程序中那样。
第一段代码的s只是一个指针(一个野指针),并未分配空间,为其赋值就有可能编译不过。
大神们都说得很清楚了。