C语言第二篇:输入与输出
C语言
02
输入与输出
本篇主要介绍C语言的基本输入输出规则以及相关语法,有助于帮同学们理清容易混淆的知识点和易错点,在考场上轻松拿分!
考点一
printf函数
Printf当数大家最熟悉的句子了,铁打的格式没有什么变化的空间,但是输出的内容却可以一百个花样,让人一头雾水。但是只要掌握个中规律,你一定可以在黑色屏幕上看到你想要的输出结果。
格式为:printf
函数的表现形式为:printf(“格式化字符串数据”,可变参数列表)
printf()函数的强大之处在于格式化显示输出整数,浮点数,字符以及字符串到文件,网页。同时在控制台我们可以使用这个函数来调试程序或者获取方法的返回值等等。
printf只会按照传递的参数类型解析数据,不会进行数据类型转换,传入的参数类型和个数和输出的类型和个数保持一致,不然程序运行时会出异常。
%d对应整型,%f对应单精度实型,%c对应字符型,%o对应八进制无符号整型,%x对应无符号十六进制整型,%u对应无符号整型,%e对应指数型,%s对应字符串型。以下是关于不同数据类型的输出要点的整理归纳:
考点二
scanf函数
scanf(“%d%d%*d%d”,&a,&b,&c); 跳过输入的第三个数据。
Scanf就是给你的电脑定下一个规矩,也限制了输入的格式。保持前后一致尤为重要,否则将会影响后续的程序实现。
与printf和scanf称兄道弟的就是下面两个啦!功能类似但是用法却大有不同,让我们来康康!
考点三
putchar与getchar函数
可用于输出或输入单个字符,这两个函数是stdio.h文件中的库函数,它们是printf与scanf函数的简化。
char a = getchar() 是没有参数的,从键盘得到你输入的一个字符给变量a。
putchar(‘y’)把字符y 输出到屏幕中。
例如:
char c;
c=getchar(); //从键盘读入一个字符
putchar(c); //再屏幕上输出所输入的字符
putchar(c+1); //在屏幕上输出所输入的字符的后续字符
写代码时较为常见的问题就是交换变量,顺序不同效果不同,这个时候“引入第三者”是最为简单的方法。
考点四
如何让交换两个变量
如何实现两个变量x ,y 中数值的互换(要求背下来)
不可以把 x=y ,y=x; 要用中间变量 t=x;x=y;y=t。
考点五
保留三位小数
如何实现保留三位小数,第四位四舍五入的程序
float x=12.34567;
float y=((int)(x*1000+0.5))/1000.0;
这个有推广的意义,注意 x = (int)x 这样是把小数部分去掉。
真题训练
1、以下程序运行时输出结果是()。
#include<stdio.h>
void main()
{ int k=5,n=0;
while(k>0)
{ switch(k)
{ case 1:
case 3:n+=1;k--;break;
default:n=0;k--;
case 2:
case 4: n+=2;k--;break;
}
}
printf("%3d",n);
}
答案:2 3 5 6
2、以下语句中有语法错误的是_________ 。
A.printf("%d",0e); B.printf("%f",0e2); C.printf("%d",Ox2); D.printf("%s","0x2");
答案A
3、若需要通过调用f函数得到一个数的平方值,以下f函数定义中不能实现该功能的是——
A.void f(double *a){*a=(*a)*(*a);} B.void f(double a,double *b){*b=a*a;}
C.void f(double a,double b){b=a*a;} D.double f(double a){return a*a;}
答案C
排版:陈彦淇
整理:何佳柠
审核:苏泳 陈司