苏嵌//杨曼曼//2018.7.12

2019-07-13 08:16发布

   今日学习任务 1. 完成老师给的嵌入式Linux开发工具篇题目整理;2. 3小时内完成4C语言编程题。今日任务完成情况  1. 上午题目整理在时间内基本完成;2. 下午编程题在教室内完成3道,最后一道在课后完成。今日开发中出现的问题汇总 1. 题目整理中有些题目有一点点记忆,但是不知道具体的,完整的答案;2. 编程题有些函数例如gets需要查询书本,或是从网上找答案。 今日未解决问题 今日开发收获今天系统地回顾并巩固了这些天所学的所有知识点,复习了C语言编程里的语法,也加强了对vim文本编辑器的掌握。 自我评价   今天学习任务基本按计划完成,对C语言的知识点又做到了巩固,同时发现这些天的所学的东西还有记得不牢固的。其他 代码:
1.杨辉三角
#include
int main()
{
    int i;
    int j;
    int n;
    int a[11][11] = {1};//定义11行11列的范围
    if(n > 0 && n < 11)
    {
       printf("Please enter the number of rows for the triangle: ");
    }//判断输入行数是否在定义的范围内
    scanf("%d",&n);
    for(i = 1; i < n; i++)//从第二列开始执行
    {
        a[i][0] = 1;//第一列的元素为1
a[i][i] = 1;//第i列第i行的元素为1
        for(j = 1; j < i; j++)//从第二行开始执行
   {
        a[i][j] = a[i-1][j-1] + a[i-1][j];//每个数是上面两数之和
            }
    }
    for(i = 0; i < n; i++)
    {
        for(j = 0; j <= i; j++)
printf("%5d",a[i][j]);//输出杨辉三角
printf(" ");
    }
}
2.计算器:
#include
int main()
{
    float a;
    float b;
    float d;
    char c;
    printf("Please enter the algorithm: ");
    scanf("%1f%c%1f",&a,&c,&b);//输入a的值、c的类型、b的值
    switch(c)
    {
    case'+':d = a + b;//输入'+'执行加法算法
printf("The result of the calculation is: %1f ",d);break;
case'-':d = a - b;//输入'-'执行减法算法
printf("The result of the calculation is: %1f ",d);break;
case'*':d = a * b;//输入'*'执行乘法算法
printf("The result of the calculation is: %1f ",d);break;
case'/':d = a / b;//输入'/'执行除法算法
printf("The result of the calculation is: %1f ",d);break;
    }
}
3.n的阶乘:
#include


int main()
{
    int i = 1;
    int n = 1;
    int s = 1;
    printf("Please enter the number of n: ");//输入n的值
    scanf("%d",&n);
    for(i = 1; i <= n; i++)//第一个数为1,从1开始循环加1
    {
        s = s * i;//s等于第一个i和后一个i的乘积
    }
    printf("n!=%d ",s);//输出n的阶乘
    return 0;
}
4.子串在字符串出现的次数:
#include
#include
int main()
{
    char str1[100];//定义字符串str1
    char str2[10];//定义字符串str2
    printf("请输入字符串str1: ");
    gets(str1);//读取str1
    printf("请输入子串str2: ");
    gets(str2);//d读取str2
    printf("num=%d ",findnum(str1,str2));
    return 0;
}
//从str1中查找str2的个数,并返回
int findnum(char *str1, char *str2)
{
    int n = strlen(str2);
    int num = 0;
    while(str1 = strstr(str1,str2))//如果查找到则执行循环,否则为空退出
    {
        num++;//统计次数
str1 += n;//加上偏移量,即删除str2
    }
    return num;
}