ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

C语言的第四天(明解篇)

2022-01-19 22:02:57  阅读:135  来源: 互联网

标签:puts int scanf 明解 height width 第四天 printf C语言


《明解C语言》第一章总结与感悟

//表现出显示与输出,并且使用乘法
#include <stdio.h>
int main()
{
	int height, width;
	puts("输出长方形的面积");
    scanf("%d", &height);
	printf("长为:%d\n", height);
	scanf("%d", &width);
	printf("宽为:&d\n", width);
	printf("长方形的面积为:%d", height * width);
	return 0;
}

这是看完第一章之后,最后写出来的对于第一章领悟的代码,但是出现了问题,通过对这个错误的代码进行修正与分析,开始对于第一章的总结。

VS给出的错误提示,主要是

  1. printf: 格式字符串中传递的参数太多
  2. 返回值被忽略: “scanf”
  3. ‘scanf’: This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

修改后的程序为

//表现出显示与输出,并且使用乘法
#define _CRT_SECURE_NO_DEPRECATE
#include <stdio.h>
int main()
{
	int height, width;
	puts("输出长方形的面积");
    printf("长为:\n");
    scanf_s("%d", &height);
	printf("宽为:\n");
	scanf_s("%d", &width);
	printf("长方形的面积为:%d", height * width);
	return 0;
}

请添加图片描述

1、关于第二个问题
将scanf改为scanf_s可以解决
2、关于第三个错误
原因在查找资料后发现是Visual C++ 使用了更加安全的 run-time library routines,解决方法是定义了新的宏

#define _CRT_SECURE_NO_DEPRECATE

在这里需要注意的是这个定义要放在所有include的前面

第一章的总结

  • 变量与常量
  • 输入和显示

1、变量与常量

字符串常量:在 printf 里面第一个实参就是字符串常量,如代码中的puts("输出长方形的面积"),引号内就是字符串常量

(1)声明
例如:int x;

在这里,会随机赋一个垃圾值

(2)初始化
(初始化是在声明的时候进行)
例如:int x=2;
(3)赋值
(赋值是在已经生成变量的情况下给数值以变量)
例如:x=2;

2、输入与显示

(1)scanf()/scanf_s()
  格式:scanf_s("%d", &height);

在逗号外要加上 & 符号

(2)printf()
  格式:printf("长方形的面积为:%d", height * width);

(3)puts()
  格式:puts("输出长方形的面积");

这个函数不仅可以输出实参,还可以换行

但是这样的格式是不对的puts(2)

标签:puts,int,scanf,明解,height,width,第四天,printf,C语言
来源: https://blog.csdn.net/weixin_50992530/article/details/122586202

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有