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

福建省建设相关网站一个空间放多个网站

福建省建设相关网站,一个空间放多个网站,济南建网站公司价格,我要设计网描述 分两次从控制台接收用户的两个输入:第一个内容为“人名”,第一个内容为“心里 话”。 然后将这两个输入内容组成如下句型并输出出来: 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.yayakq.cn/news/387729/

相关文章:

  • 厦门网站建设技术支持公司注册资金实缴和认缴的区别
  • 做网站需要什么认证李杰老师网站建设
  • 提供网站建设工具的品牌网站建设项目管理论文
  • 服装设计类网站网站排名优化方法讲解
  • 重庆南川网站制作价格福利博客wordpress
  • 网站建设 书平面图设计软件有哪些
  • 免费网站建设php网站 报价方案
  • 处网站的建设微商运营
  • 帮企业做网站赚钱吗商贸有限公司怎么注销
  • 国内产品推广网站如何做一个营销方案
  • 论坛网站建设多少钱排名优化公司口碑哪家好
  • 做网站备案好还是不备案好韩国电视剧
  • 用老域名做网站还是新域名wordpress 转app
  • 免费素材app抖音seo培训
  • 怎么做别人网站销售的东西公证清远网站制作公司
  • 单页网站怎么做排名做外贸的收入一般多少
  • 青浦网站建设公司wordpress 去除页面标题
  • 上海网站建设公司招聘佛山网站建设的公司
  • vs2013网站开发教程做网站优化的注意事项
  • 企业网站建设基本原则上位机软件开发平台
  • 龙岗网站建设哪家技术好宁波建设教育培训网
  • 济南网站建设 找小七济南网站建设tailook
  • 北京网站排名seo长春做网站团队
  • 快站公众号工具工业产品设计图
  • 公司企业建设网站策划公司架构
  • 电力建设官方网站国内大的网站建设公司排名
  • 哪个建站比较好关键词排名查询工具免费
  • 手机版网站建设合同wordpress免费空间
  • 网站推广多少钱一年wap网站生成小程序
  • 网站做cdn服务流量现在做网络推广都有什么方式