这个课程属于哪里 | c语言程序设计 |
这个要求在哪里 | 2019春第五周编程作业 |
我在这个课程的目标 | 学会简单编程 |
在哪里帮助我实现目标 | 学会字符串 字符数组 |
参考文献 | C Primer Plus,c语言教材 |
7-1 统计一行文本的单词个数 (15 分)
本题目要求编写程序统计一行字符中单词的个数。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。
输入格式:
输入给出一行字符。
输出格式:
在一行中输出单词个数。
输入样例:
Let's go to room 209.
输出样例:
5
1.实验代码
#include<stdio.h>
#include<string.h>
int main()
{
char ch[1000];
gets(ch);
int m, i, count;
m = strlen(ch);
if (ch[0] == ' ')
count = 0;
else
count = 1;
for (i = 0; i<m - 1; i++)
{
if (ch[i] == ' ' && ch[i + 1] != ' ')
count++;
}
printf("%d
", count);
return 0;
}
2.设计思路
3.编程过程中遇到的问题及解决方法
这题有参照老师上课讲的那个代码,所以没有出很大问题
4.正确截图
第五周预习题——选择题
1.预习的主要内容
a、指针的值是它所指向对象的地址
b、在指针前面使用*运算符可以得到该指针所指向对象的指
c、指针的基础运用
2.作业截图
3.预习还存在的疑问
1.指针的具体应用
2.怎么看到底是指针的值还是原本循环的值
3.fun()函数
7-1 英文单词排序 (25 分)
本题要求编写程序,输入若干英文单词,对这些单词按长度从小到大排序后输出。如果长度相同,按照输入的顺序不变。
输入格式:
输入为若干英文单词,每行一个,以#作为输入结束标志。其中英文单词总数不超过20个,英文单词为长度小于10的仅由小写英文字母组成的字符串。
输出格式:
输出为排序后的结果,每个单词后面都额外输出一个空格。
输入样例:
blue
red
yellow
green
purple
#
输出样例:
red blue green yellow purple
1.实验代码(指针做法)
#include <stdio.h>
#include <string.h>
int main()
{
char str[20][10],t[20],str1[10];
int i,j,n=0;
FILE *fp;
if((fp=fopen("D:\新建文件夹\Tim.txt","a+"))==NULL)
{
printf("File open error!
");
}
while(1)
{
fscanf(fp,"%s",str1);
if(str1[0]=='&')
{
break;
}
else
{
strcpy(str[n],str1);
n++;
}
}
for(i=0;i<n-1;i++)
for(j=0;j<n-i-1;j++)
{
if(strlen(str[j])>strlen(str[j+1]))
{
strcpy(t,str[j]);
strcpy(str[j],str[j+1]);
strcpy(str[j+1],t);
}
}
fp=fopen("D:\新建文件夹\Tim,txt","a+");
printf("
");
fprintf(fp,"
");
for(i=0;i<n;i++){
fprintf(fp,"%s ",str[i]);
printf("%s ",str[i]);
}
if(fclose(fp))
{
printf("Can not close the file!
");
}
return 0;
}
源代码借鉴自博主许啊闫呀婷
2.设计思路
3.编程过程中遇到的问题及解决
4.正确截图
结对编程
感想:本周结对编程感觉比上周的感觉好一点了,可能是开始慢慢习惯了这个模式
优缺点:
优点:.可以让自己知道自己有多不足 2.听到更多的问题然后解决 3.可以更好的达到写出题目的目的
缺点:无法确定是否真正弄懂了
结对照片:
图为写pta上选择题
学习感想:学无止境
学习进度条
时间 | 花的时间 | 学到的东西 | 目前的疑惑 |
---|---|---|---|
第五周 | 7小时 | strlen函数和stecpy,指针的基本 | 学c好难 |
折线图