尔雅程序设计基础(C语言)2章节答案(学习通2023课后作业答案)
摘要:
第9周:指针与字符串1 指针的使用随堂测验1、对于:int a[] = {5, 15, 34, 54, 14, 2, 52, 72}; int *p = &a[5]; 则: p[-2]的值是?
...
尔雅程序设计基础(C语言)2章节答案(学习通2023课后作业答案)
1 指针的尔雅使用随堂测验
1、对于:int a[] = { 5,程序 15, 34, 54, 14, 2, 52, 72}; int *p = &a[5]; 则: p[-2]的值是?
A、编译出错,设计因为数组下标越界了
B、基础节答运行出错,语言章因为数组下标越界了
C、案学54
D、习通2
2、课后如果:int a[] = ; int *p = a; 则以下哪些表达式的作业结果为真?
A、p == a[0]
B、答案p == &a[0]
C、尔雅*p == a[0]
D、程序p[0] == a[0]
3、设计以下变量定义: int* p,基础节答q; 中,p和q都是语言章指针。
4、对于:int a[] = { 5, 15, 34, 54, 14, 2, 52, 72}; int *p = &a[1]; 则: p[2]的值是?
2 指针运算随堂测验
1、对于以下代码段,正确的说法是:char *p; while (1) { p = malloc(1); *p = 0; }
A、最终程序会因为没有没有空间了而退出
B、最终程序会因为向0地址写入而退出
C、程序会一直运行下去
D、程序不能被编译
2、对于以下代码段:int a[] = { 1,2,3,4,5,}; int *p = a; int *q = &a[5]; printf("%d", q-p); 当sizeof(int)为4时,以下说法正确的是:
A、因为第三行的错误不能编译
B、因为第三行的错误运行时崩溃
C、输出5
D、输出20
3、使用malloc就可以做出运行时可以随时改变大小的数组
第1周编程题
1、字符串比对
第10周:结构类型
2 结构随堂测验
1、有下列代码段,则输出结果是:struct { int x,y; } s[2] = { { 1,3}, { 2,7}, }; printf("%d\n", s[0].y/s[1].x);
A、0
B、1
C、2
D、3
2、有如下变量定义,则对data中的a的正确引用是:struct sk { int a; float b; } data, *p=&data;
A、(*p).data.a
B、(*p).a
C、p->data.a
D、p.data.a
3、以下两行代码能否出现在一起? struct { int x; int y; } x; struct { int x; int y; } y;
第10周:程序结构
2 编译预处理和宏随堂测验
1、假设宏定义: #define DOUBLE(x) 2*x 则DOUBLE(1+2)的值是
2、假设宏定义如下: #define TOUPPER(c) ('a'<=(c)&&(c)<='z'?(c)-'a'+'A':(c)) 设s是一个足够大的字符数组,i是int型变量,则以下代码段的输出是: strcpy(s, "abcd"); i = 0; putchar(TOUPPER(s[i]));
学习通程序设计基础(C语言)2
C语言作为最基础的编程语言之一,其学习过程也是相当重要的,上文我们已经介绍了基础语法的一些内容,今天我们将继续深入学习C语言的一些基础知识。
1. 数组
数组是一种有序的数据集合,可以保存多个同类型的数据,其在C语言中的定义方式为:
数据类型 数组名[元素个数];
例如:
int nums[5]; // 定义一个包含5个整数的数组
数组可以通过下标访问每个元素,下标从0开始,例如:
nums[0] = 1; // 数组中第一个元素赋值为1nums[1] = 2; // 数组中第二个元素赋值为2
可以通过循环语句遍历数组中的元素:
for(int i=0; i<5; i++){ printf(\d \ nums[i]); // 输出数组中每个元素}
2. 字符串
字符串是一种特殊的字符数组,其以'\\0'(空字符)结尾,例如:
char str[6] = \hello\ // 定义一个长度为6的字符串,包含5个字符
可以通过循环遍历字符串中的每个字符,例如:
for(int i=0; i<6; i++){ printf(\c \ str[i]); // 输出字符串中每个字符}
也可以使用字符串库函数来操作字符串,常用的字符串库函数有:
- strlen(str):返回字符串的长度
- strcpy(dest, src):将src字符串复制到dest字符串中
- strcat(dest, src):将src字符串连接到dest字符串后面
- strcmp(str1, str2):比较两个字符串是否相等
3. 结构体
结构体是一种自定义的数据类型,可以包含多个不同类型的数据,例如:
struct person{ char name[20]; int age; float height;};struct person p1; // 定义一个person类型的变量
可以通过\操作符访问结构体中的每个成员变量,例如:
strcpy(p1.name, \Tom\ // 赋值name成员变量p1.age = 20; // 赋值age成员变量p1.height = 1.75; // 赋值height成员变量
结构体也可以作为函数的参数或返回值,例如:
struct person getInfo(){ struct person p; printf(\Please input name, age, height:\\n\ scanf(\s %d %f\ p.name, &p.age, &p.height); return p;}
4. 文件操作
文件操作是C语言中常用的功能之一,常用的文件操作函数有:
- fopen(filename, mode):打开文件,返回文件指针
- fclose(fp):关闭文件
- fread(buffer, size, count, fp):从文件中读取数据
- fwrite(buffer, size, count, fp):向文件中写入数据
例如,可以通过以下代码打开一个文件,并向文件中写入数据:
FILE *fp;fp = fopen(\file.txt\ \w\fprintf(fp, \hello world\\fclose(fp);
也可以从文件中读取数据,并输出到屏幕上:
char buffer[20];fp = fopen(\file.txt\ \r\while(fgets(buffer, 20, fp) != NULL){ printf(\s\ buffer);}fclose(fp);
总结
本文介绍了C语言中的数组、字符串、结构体和文件操作等基础知识,这些内容是学习C语言编程的基础,掌握了这些知识之后,可以更深入地学习C语言,并进行更复杂的编程工作。
文章版权及转载声明
本文地址:http://www.zzxhsh.org/69f799916.html发布于 2024-05-19 06:08:34
文章转载或复制请以超链接形式并注明出处五煦查题
评论列表 (暂无评论,44人围观)参与讨论