本次作业所属课程 | C语言程序设计|| |
本次作业要求 | |
我在这个课程的目标是 | 学会数组与文件之间的转化 |
本次学习在哪些具体方面帮组我实现目标 | 学会画流程图 |
参考文献 | C primer plus第六版 |
题目一:统计一行文本的单词个数
1)代码截图
#include<stdio.h>
#include<string.h>
int main()
{
char a[1000];
gets(a);
int m, i, j;
m = strlen(a);
if (a[0] == ' ')
j = 0;
else
j = 1;
for (i = 0; i<m - 1; i++){
if (a[i] == ' ' && a[i + 1] != ' ')
j++;
}
printf("%d\n", j);
return 0;
}
2)设计思路
3)运行结果截
题目二:统计一行文本的单词个数
1)代码截图
2)设计思路
3)运行结果截图
题目三:第五周预习题
A 、单选题7
2-1、下列语句定义 x 为指向 int 类型变量 a 的指针,正确的是( )。 (2分)
- int a, *x = a;
- int a, *x = &a;
- int *x = &a, a;
- int a, x = a;
2-2 、int *p 的含义是 (2分)
- p是一个指针, 用来存放一个整型数
- p是一个指针, 用来存放一个整型数据在内存中的地址
- p是一个整型变量
- 以上都不对
2-3、如果有定义:int m, n = 5, *p = &m; 与m = n 等价的语句是 () 。 (1分)
- m = *p;
- *p = *&n;
- m = &n;
- m = **p;
2-4、变量的指针,其含义是指该变量的( )。 (1分)
- 值
- 地址
- 名
- 一个标志
2-5、有如下程序段
int *p,a=10,b=1;
p=&a; a=*p + b;
执行该程序段后,a的值是 (2分)
- 12
- 11
- 10
- 编译出错
2-6 、对于下列程序,正确的是() 。 (2分)
void f(int *p) { *p = 5; } int main(void) { int a, *p; a = 10; p = &a; f(p); printf(“%d”, (*p)++); return 0; }
- 5
- 6
- 10
- 11
2-7、执行如下程序段,打印输出的内容是: (2分)
#include <stdio.h>
void fun (int c, int *d) { c++; (*d)++; } int main ( ){ int a=5, b=9; fun(a, &b); printf("%d, %d", a, b); return 0; }
- 5, 9
- 6, 10
- 5, 10
- 6, 9
预习题总结与心得:通过自学指针以及这几个题目,我大致了解了数组的作用,指针贮存的是一个地址,相比数组而言,指针是间接的访问。
目前存在的疑惑:指针的调用
题目四:挑战题
不会写
四、学习进度条
时间 | 这周所花时间 | 代码行数 | 学到的知识简介 | 目前比较迷惑的问题 |
第一周 | 5小时 | 80 | 初步了解数组 | 数组的引用 |
第二周 | 6小时 | 200 | 指针的了解 | .。 |
第三周 | 7小时 | 200 | 文件与数组的使用 | 。。 |
第四周 | 9小时 | 120 | 冒泡法,选择排序法 | 。。 |
第五周 | 9小时 | 120+ | 字符型数组 | 把代码改成文件格式 |
六、结对编程感想