C语言printf及scanf相关知识

发布时间:2024年01月17日

一、变量满足四个规则

1、变量名? (标识符)

??? a、由字母和下划线组成,且只能以下划线或字母开头不能以数字开头

??? b、要区分大小写 SUM与sum意思不同,将变量名字取到“顾名思义”。

驼峰命名法int secondsPerYear)


2、变量值

3、存储单元

4、数据类型

? a、整型数--整数(int date = 10;)

? b、字符型(char data =‘c’;)

? c、浮点型--小数(float data = 3.2;)


要先定义在使用

int a = 3;
int b;
b = a+1;

?二、函数的输入与输出

printf (“%d,%c \n”,i,c);

%占位符/格式字符

d--十进制数

c--单个字符

s--多个字符

f--小数

x--以16进制输出

p--一般打印地址也是以16进制输出--取地址符用&

在书写代码的过程中一定要切换到英文状态下,输入英文状态下的标点符号程序才不会报错代码有错误都要重新编译完了在运行,\n 换行

#include <stdio.h>
/*这个也是注释*/
int main()
{
	
	int a = 3;
	float f = 2.3;
	char c = '#';
	
	int data = 10;
	int chushu = 3;
	float result;
	result = (float)data/chushu;//强制转化,把整数给小数
	
    printf("随便输出什么在cmd端\n");
	printf("a=%d\n",a); //%d 占位符 %d就是运行过后的a的值
	a = 100;
	printf ("修改后a的值为%d\n",a);
	printf ("以十六进制输出a=0x%x\n",a);
	printf ("有一个小数f=%f",f);
	printf ("有一个字符c = %c\n",c);
	printf ("a的地址是%p\n",&a);
	printf ("result = %f \n",result);
	printf ("result = %f \n",(float)data/chushu);

	
	return 0;

}

运行的结果

三、代码运用

编写一个两个固定数的加减乘除

#include <stdio.h>
int main()
{
	int data1 = 10;
	int data2 = 6;
	int data3;
	float data4;
	printf("这是固定两位数加减乘除计算器\n");
	data3 = data1 + data2;
	printf("这两个数的和为%d\n",data3);
	data3 = data1 - data2;
	printf("这两个数的差为%d\n",data3);
	data3 = data1 * data2;
	printf("这两个数的积为%d\n",data3);
	data4 =(float) data1 / data2;
	printf("这两个数的商为%f\n",data4);
	return 0;
	
}

运行结果:

第一次写的时候忘记加\n了结果显示不是很好看,又加上之后结果很清晰的就可以看到了;

四、scanf输入

?scanf扫描键盘,等待用户的输入

格式:

scanf("%f%f%f",&a,&b,&c)? 是取地址

scanf("%f%f%f",&a,&b,&c

scanf("a=%f,b=%f,c=%f",&a,&b,&c)scanf格式中有什么,输入的时候就要有什么

要注意标点符号

#include <stdio.h>

int main()
{
	int data;
	int data2;
	int data3;
	
	printf("请输入一个整数:\n");
	scanf("%d",&data);
	printf("输入完毕\n");
	printf("你输入的数据是:%d\n",data);

	printf("请输入三个整数\n");
	scanf("%d%d%d",&data,&data2,&data3);
	printf("输入完毕\n");
	printf("你输入的数据是:data=%d,data2=%d,data3=%d\n",data,data2,data3);

	printf("请输入三个整数\n");
	scanf("%d,%d,%d",&data,&data2,&data3);
	printf("输入完毕\n");
    printf("你输入的数据是:data=%d,data2=%d,data3=%d\n",data,data2,data3);
	
	return 0;
	
	
}

五、混合输入

#include <stdio.h>

int main()
{
	char data;
	char data2;
	char data3;
	int dataInt;
	float dataFloat;
	
	printf("请输入三个字符:\n");
	scanf("%c%c%c",&data,&data2,&data3);//字符型的中间不可以打空格
	printf("输入完毕\n");
	printf("你输入的数据是:data=%c,data2=%c,data3=%c\n",data,data2,data3);
	
	printf("请分别输入整数,字符,小数\n");
	scanf("%d%c%f",&dataInt,&data,&dataFloat);
	printf("输入完毕\n");
	printf("你输入的数据是:dataInt=%d,data=%c,dataFloat=%f\n",dataInt,data,dataFloat);
	

	return 0;
	
	
}

在混合输入时整数,字符,小数之间不可以用任何的符号包括空格回车都不可以用,用了之后会导致输出的结果出现问题

其他输入方式:

getchar

putchar

puts

gets(目前还没用到,数组要用)

#include <stdio.h>
/*
  与printf的区别
  1、自动加入换行符;
  2、printf支持多种花样的输出,而puts就是输出字符串
*/
  int main ()
{
	
	char c;
	puts("请输入一个字符");
	c = getchar();
	puts("你输入的字符是");
	putchar(c);
	return 0;

}

运行结果:

有问题欢迎小伙伴们指正,我们一起进步!

文章来源:https://blog.csdn.net/weixin_51957704/article/details/135637889
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。