苏嵌日志

姓名:陈蓉蓉 日期:2018.09.10

今日学习任务: 安装软件,熟悉嵌入式开发环境、复习c语言

问题汇总:很多c语言方面的知识已遗忘、语法编译不熟练
今日未解决问题: c语言知识概念模糊

今日开发收获:复习了c语言相关知识,加深了印象,熟悉了Linux下C语言程序的编程与编译
自我评价:今天的任务基本完成,完成了老师
所布置的任务,编写了一些简单的程序
作业:
一、输入一个字符串,计算字符串中子串出现的次数


#include <stdio.h>
#include <string.h>
#include <stdlib.h>

int main() 
{ 
char a[100]; 
printf(“Please input your string.\n”); 
scanf(“%s”,a); 
char * c = a; 
char b[10]; 
printf(“Please input the subsidiary string. \n”); 
scanf(“%s”,b); 
char * d = b; 
int n; 
int num = 0; 
n = strlen(d); 
while(strlen(c) > 0) 
{ 
if(strncmp(c,d,n) == 0) 
{ 
num++; 
c += n; 
} 
else 
{ 
c++; 
} 
} 
printf(“%d\n”,num); 
return 0; 
}
二、编写一个C函数,将”I am from shanghai ”倒置为”shanghai from am I”,即将句子中的单词位置倒置,而不改变单词内部结构
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

int main()
{
    char *str[4];
    char *ptr = "I am from shanghai";
    int i, j;

    for (i = 0; i<4; i++)
    {   
        str[i] = (char *)malloc(sizeof(char) * 20);
    }   

    for(i = 0; i < 4; i++)
    {   
        ptr ++; 
        for (j = 0; j<20; j++)
        {
            if(*(ptr - 1) == ' ' || *(ptr - 1) == '\0')
            {
                break;
            }
            strncat(str[i],ptr - 1, 1); 
            ptr++;
        }
    }   
    for(i = 3; i >= 0; i--)
    {   
        printf("%s ",str[i]);
    }   
    printf("\n");
    return 0;

“`

猜你喜欢

转载自blog.csdn.net/qq_43175673/article/details/82596548