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

深圳网站建设培训班2023年的新闻十条

深圳网站建设培训班,2023年的新闻十条,建设工程案例网站,广州市招投标交易中心描述 分两次从控制台接收用户的两个输入:第一个内容为“人名”,第一个内容为“心里 话”。 然后将这两个输入内容组成如下句型并输出出来: 1.(人名),I want to say,(心里话 2. 输入输出示例: 输入&#xff…

描述
分两次从控制台接收用户的两个输入:第一个内容为“人名”,第一个内容为“心里
话”。
然后将这两个输入内容组成如下句型并输出出来:
1.(人名),I want to say,(心里话
2.
输入输出示例:
输入:Kim
You are beautiful!
输出:
Kim,I want to say,You are beautiful!

(答案在文末,有两种答案)

错误演示:

#include <stdio.h>int main() {char name[100];char thoughts[100];// 从控制台接收第一个输入printf("请输入人名:");scanf("%s", name);// 从控制台接收第二个输入printf("请输入心里话:");scanf("%s", thoughts);// 组成句子并输出printf("%s, I want to say, %s\n", name, thoughts);return 0;
}

 

程序输出的是 "Kim, I want to say, You",而没有输出完整的句子 "Kim, I want to say, You are beautiful!",可能是因为输入的心里话太长,超出了 scanf 函数读取字符串的默认长度。此时可以使用指定最大长度的方式来接收输入。

修改 C 语言代码如下:

#include <stdio.h>int main() {char name[20];char thoughts[50];// 从控制台接收第一个输入printf("请输入人名:");scanf("%s", name);// 从控制台接收第二个输入printf("请输入心里话:");scanf("%49[^\n]", thoughts);   // 指定最大长度为49,并忽略换行符// 组成句子并输出printf("%s, I want to say, %s\n", name, thoughts);return 0;
}

 

如果在输入心里话时出现 "Kim, I want to say, € @报错" 这样的输出,那么很可能是在输入时发生了中文编码问题。可以尝试以下方法解决:

编辑器设置:打开代码文件,查看编辑器的文字编码设置,将其设置为 UTF-8 编码(或者 GBK 编码,具体需要根据本地环境和输入内容来选择),再保存代码文件。

输出调试:在 C 语言程序中加入一些输出语句,以便查看程序的执行情况,比如:

   printf("输入的心里话是:%s\n", thoughts);   // 输出调试信息

 这里的将其设置为 UTF-8 编码(或者 GBK 编码,具体需要根据本地环境和输入内容来选择),再保存代码文件,可以自行琢磨,不继续了,下面换方法思路了

方法一:使用 fgets 函数来接收用户输入

所以最终改出来的代码为:

#include <stdio.h>
#include <string.h>int main() {char name[20];char thoughts[50];// 从控制台接收第一个输入printf("请输入人名:");fgets(name, sizeof(name), stdin);name[strcspn(name, "\n")] = '\0';   // 去除换行符// 从控制台接收第二个输入printf("请输入心里话:");fgets(thoughts, sizeof(thoughts), stdin);thoughts[strcspn(thoughts, "\n")] = '\0';   // 去除换行符// 组成句子并输出printf("%s, I want to say, %s\n", name, thoughts);return 0;
}

 

方法二:使用 gets 函数

#include <stdio.h>
#include <string.h>int main() {char str1[20], str2[20];printf("请输入人名:");gets(str1);printf("请输入心里话:");gets(str2);printf("%s, I want to say, %s\n", str1, str2);return 0;
}

 

使用 gets 函数来读取输入。gets 函数在读取一行输入时不会将换行符作为输入的一部分,因此不需要去除换行符。接下来,使用 printf 函数输出组合好的字符串。

虽然 gets 函数比 fgets 函数用起来更方便,但由于 gets 函数不能限制输入的长度,容易发生缓冲区溢出,造成系统安全漏洞,所以在实际开发中建议使用 fgets 函数,并在读取用户输入前检查输入字符的长度。

http://www.hengruixuexiao.com/news/38472.html

相关文章:

  • 公司网站建设工作总结关于软文营销的案例
  • WordPress网站接入今日头条百度免费发布信息
  • 头条淘宝联盟网站推广怎么做郑州百度推广外包
  • 像素点建网站网红推广团队去哪里找
  • 建设网银怎么开通使用邯郸seo优化公司
  • 如何通过做网站月入上万文件外链网站
  • 临沂网站建设推荐美业推广平台
  • 长沙企业网站建设公司网店运营
  • 网站开发工具选择seo入门培训学校
  • 网站图片怎么做alt企业营销型网站策划
  • 青岛有没有做网站的自媒体论坛交流推荐
  • 厦门好的做网站公司百度推广方案怎么写
  • 网站想做个链接怎么做的seo优化公司
  • 铜梁集团网站建设标题优化怎么做
  • 济南高端网站建设公司军事新闻最新消息
  • 爱站工具包的模块有哪些网络电商推广方案
  • 自适应全屏网站怎么建立一个属于自己的网站
  • 如何做医美机构网站观察分析上海网络推广排名公司
  • 42区 网站开发指南百度搜索链接
  • 网站上面带官网字样怎么做的网盘资源搜索神器
  • 福州建网站哪家公司好seo搜索引擎优化报价
  • 宁波网站建设制作多少钱成都百度提升优化
  • 房屋建设网站seo 的原理和作用
  • 购物网站建设个人总结优化营商环境工作开展情况汇报
  • 如何做网站背景怎么理解搜索引擎优化
  • 如何做网站竞价排名口碑营销属于什么营销
  • 湖南做旅游网站哪家最好网络营销推广难做吗
  • 贵阳生态文明建设委员会网站seo 页面链接优化
  • 门户网站建设情况seo指的是搜索引擎
  • 网站建设零基础好学吗智慧软文发稿平台