当前位置: 首页 > news >正文

简单美食网站模板免费下载开源手机网站建站系统

简单美食网站模板免费下载,开源手机网站建站系统,重庆做手机网站建设,网络营销总结感悟:C primer plus (第六版)第十一章主要讲的是字符串处理函数,融合之前学习的数组,指针,函数的知识,综合应用于字符串处理函数,如何使用C标准函数并建立自己需要的函数,没学明白&a…

感悟:

        C primer plus (第六版)第十一章主要讲的是字符串处理函数,融合之前学习的数组,指针,函数的知识,综合应用于字符串处理函数,如何使用C标准函数并建立自己需要的函数,没学明白,第十一章要学明白还是需要反复看之前的章节的知识点,巩固相关重点知识点,同时需要非常清楚程序在处理字符串中的一系列步骤和细节才可以算是学明白了。看到十一章编程题目只有大致思路,写的程序各种问题跑不通,所以第十一章编程练习答案是直接照搬的网上的编程练习答案,将答案分享出来做个记录后面慢慢研究。

题目:

1.设计并测试⼀个函数,从输⼊中获取n个字符(包括空⽩、制表符、换⾏符),把结果存储在⼀个数组⾥,它的地址被传递作为⼀个参数。

思路:

        需用getchar()函数逐个读入字符并存储在一个数组里面,然后函数返回数组地址,main()函数用puts()进行函数的测试;

题目1程序:

#include <stdio.h>
#define LEN 10
char * getnchar(char * str, int n);         
int main()
{char input[LEN];char * check;check = getnchar(input, LEN-1);if (check == NULL)puts("Wrong input!");elseputs(input);            //回测输入puts("Done.");return 0;
}char * getnchar(char * str, int n)
{int i;int ch;             //用int类型接收getchar()返回值,正确处理EOF(可能为-1),for ( i = 0; i < n; i++){ch = getchar();if (ch != EOF)str[i] = ch;elsebreak;}if (ch == EOF)return NULL;else{str[i] = '\0';return str;}
}// 测试建议
// 输入少于LEN-1个字符(如 5 个),程序应完整输出并显示 "Done."。
// 输入等于LEN-1个字符(如 9 个),程序应完整输出。
// 输入中途按Ctrl+Z(Windows)或Ctrl+D(Linux)触发EOF,程序应输出已输入的部分字符。
// 测试无效参数(如getnchar(NULL, 5)),程序应提示错误。

题目:

2.修改并编程练习1的函数,在n个字符后停⽌,或在读到第1个空⽩、制表符或换⾏符时停⽌,哪个先遇到哪个停⽌。不能只使⽤scanf()。

思路:

        在程序1的基础上进行修改,用for循环限制读取的字符数,同时ch赋值给函数中的数组str[]的时候同时加入题目要求的督导空白,制表符或换行符时停止的限制条件,其他不变。

题目2程序:

#include <stdio.h>
#define LEN 10
char * getnchar(char * str, int n);         
int main()
{char input[LEN];char * check;check = getnchar(input, LEN-1);if (check == NULL)puts("Wrong input!");elseputs(input);            //回测输入puts("Done.");return 0;
}char * getnchar(char * str, int n)
{int i;int ch;             //用int类型接收getchar()返回值,正确处理EOF(可能为-1),for ( i = 0; i < n; i++){ch = getchar();if ((ch != EOF) && (ch != ' ') && (ch != '\t') && (ch != '\n'))str[i] = ch;        //读到EOF,空格,制表符和换行符就不再读下去了elsebreak;}if (ch == EOF)return NULL;else{str[i] = '\0';return str;}
}

题目:

3.设计并测试⼀个函数,从⼀⾏输⼊中把⼀个单词读⼊⼀个数组中,并丢弃输⼊⾏中的其余字符。该函数应该跳过第1个⾮空⽩字符前⾯的所有空⽩。将⼀个单词定义为没有空⽩、制表符或换⾏符的字符序列。

思路:

        首先从题目要求中便可以知道函数首先需要跳过空白,制表或换行符,然后才能确定单词头字母位置,然后和题目1类似,获取n个连续字符(单词为连续字母,字母之间没有空白,制表符或换行符)后,再丢弃掉后续出现空白,制表符或换行符及其后面的所有字符;注意答案中用isspace()函数直接判断字符是否是空;

题目3程序:

#include <stdio.h>
#include <ctype.h>
#define MAXLEN 10
char * getword(char * str);int main()
{char input[MAXLEN];char * check;check = getword(input);if ( check == NULL)puts("Wrong input!");elseputs(check);puts("Done.");return 0;
}char * getword(char * str)
{char * orig = str;int ch;
//跳过字符串开头空白while ( (ch = getchar()) != EOF && isspace(ch))continue;if ( ch == EOF )return NULL;else*str++ = ch;        //首个字符串中的非空字符
//获取单词剩余部分while ( (ch = getchar()) != EOF && isspace(ch))*str++ = ch;*str = '\0';if ( ch == EOF )return NULL;else{while (ch != '\n')ch =  getchar();return orig;}
}

题目:

4.设计并测试⼀个函数,它类似编程练习3的描述,只不过它接受第2个参数指明可读取的最⼤字符数。

思路:

        在题目3的程序的基础上给函数增加参数int n用来指定可以读取的最大字符数,所以需要修改函数中获取单词剩余部分的while循环条件,增加i<n的条件;

题目3程序:

#include <stdio.h>
#include <ctype.h>
#define MAXLEN 10
char * getnword(char * str, int n);     //修改函数名称getnword并增加参数nint main()
{char input[MAXLEN];while (getnword(input, MAXLEN-1) != NULL)   puts(input);puts("Done.");return 0;
}char * getnword(char * str, int n)
{int ch;char * orig = str;int i = 0;//跳过字符串开头空白while ( (ch = getchar()) != EOF && isspace(ch))continue;if ( ch == EOF )return NULL;else*str++ = ch;        //首个字符串中的非空字符
//获取单词剩余部分while ((ch = getchar()) != EOF && !isspace(ch) && i < n)    //增加循环限制条件i<n{*(str + i) = ch;i++;}str[i] = '\0';      //i++增加后的i,str[i]字符串结尾添加'\0'if ( ch == EOF )return NULL;else{while (ch != '\n')ch =  getchar();return orig;}
}

http://www.dtcms.com/a/416451.html

相关文章:

  • 网站公司 模板网站设计与网页制作公司
  • 一个网站备案多个域名吗建设通好用吗
  • wordpress手机站如何做网页的制作
  • 怎样做收费网站微信公众号和微网站
  • 个人怎么做ckmov解析网站小视频网站建设
  • 国外网站模版免费下载阿里巴巴如何建设网站首页
  • 建设网站排名海外营销网络
  • 网站设计文字超链接网络个性化定制
  • 网站建设结论推广优化厂商联系方式
  • 抚州 提供网站建站 公司制作网站教程视频
  • js 网站校验网络维护工程师工资多少
  • 字体排版设计网站莆田联客易外贸网站建设推广
  • Web浏览器存储技术指南:从LocalStorageQ到OPFS搞定网页数据存储难题
  • 网站建设设计问卷中国纪检监察报官网
  • 做外国网站百度搜到下载网站怎么下载
  • 高端网站建设哪家公司好游戏下载网站 wordpress
  • 智慧社区解决方案-1PPT(46页)
  • 阿里云购买域名后怎么建网站网站建设公司ejiew
  • 做pc端网站效果优秀学校网站模板
  • 素材图库网站源码专业做传奇网站解析
  • 阳江做网站公司绵阳网站建设工作室
  • 做内容网站好累领卷网站怎么做
  • 容器化安装新玩法:突破传统限制
  • 免费建网站中文域名原创音乐网站源码
  • 东莞外贸建站模板wordpress各部分的关系
  • 青岛广新信建设咨询公司网站阿里云搜索引擎入口
  • 长安大学门户网站是谁给做的莱芜都市网直播
  • 中国建筑总公司网站群晖wordpress打开慢
  • 无锡网站备案微信网页版不显示二维码
  • 哪个网站可以做专业兼职设计本接单