学习日志1
姓名:朱秋阳 日期:2018.9.10
今日学习任务:
安装Linux系统并会使用基本程序语言,能够自己编写编译并运行。学习C语言基本内容,掌握指针以及结构体相关内容。
今日任务完成情况:
完成老师上课所写程序并成功编译运行,课后作业完成。
上课笔记:
指针:
int *p = &a;把地址赋给指针
所有指针都占4个字节;
结构体 :
1.结构体总长度一定是最长成员的长度的整数倍
2.每个成员的偏移量一定是该成员长度的整数倍
cd / 切换到根目录
vim a.c 写程序 a 插入
esc 退出
shift z z 退回界面
g++ a.c -o a 编译文件命名为a
./a 执行该程序a
今日开发中出现的问题汇总:
C语言许多东西已经遗忘,需要即使复习。代码编写太生疏。
今日未解决问题:
指针,地址问题没有完全弄清,结构体的编写还有点问题。
今日开发收获:
回想起了部分的C语言程序编写过程。
学会了在linux操作系统下进行程序编译。
自我评价:
今天学习了很过,许多内容还有待提高。
习题3
#include <stdio.h>
#include <string.h>
void main()
{
char str1[20], str2[20], *p1, *p2;
int sum=0;
printf("Please enter two strings\n");
scanf("%s%s", str1, str2);
p1=str1;
p2=str2;
while(*p1 != '\0')
{
if(*p1 == *p2)
{
while(*p1 == *p2 && *p2 != '\0')
{
p1++;
p2++;
}
}
else
p1++;
if(*p2 == '\0')
sum++;
p2=str2;
}
printf("%d", sum);
getchar();
}
习题四
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void fun(char *s,char *t)
{
}
int main()
{
char str[] = "I am from Shanghai";
char *p1 = str;
char *p2 = str+strlen(str)-1;
char temp;
char *p3 = NULL;
while(p1<p2)
{
temp = *p1;
*(p1++) = *p2;
*(p2--) = temp;
}
puts(str);
p1 = str;
p2 = str;
while(*p2)
{
if(*p2 == ' ')
{
p3 = p2 - 1;
while(p1<p3)
{
temp = *p1;
*(p1++) = *p3;
*(p3--) = temp;
}
p1 = p2 + 1;
}
p2++;
}
p3 = p2-1;
while(p1<p3)
{
temp = *p1;
*(p1++) = *p3;
*(p3--) = temp;
}
printf("%s",str);
return 0;
}