Linux C 基础(4)

 1、输入、输出
 2、控制语句

1、输入输出

 函数:有独立功能的模块
 标准输入、输出函数:scanf、printf(对变量类型没有限制)
 字符的输入输出:getchar()、putchar()
 输入:从键盘将数据拷贝到内存中
 输出:从内存将数据拷贝到显示屏上

1.1 输出

 int printf("格式控制串",输出表);
 格式控制串:原样输出的内容(省略)+格式化符
 输出表:要输出的对象

整型:

 %d:十进制
 %o:八进制
 %x、%X:十六进制
 #:自动在八进制或者十六进制前面加前缀
 %u:无符号整型数
 %hd:short类型
 %ld:long类型
 %lld:long long类型

字符:

 %c:字符型

浮点型:

 %f:float
 %lf:double
 %e:指数
 %g:选择指数和小数中较短的一个
 .n:保留n位小数
 m:指定我们输出的域宽,默认是右对齐,m的值大于数据的实际长度时,左边补空格,如果m小于数据的实际长度,原样输出

1.2 输入

 总结:
 (1)scanf格式控制串语句中,不要添加修饰语,如果要加,原样输入
 (2)如果输入"%d%d"时,要给多个变量赋值,在输入的时候以空格、回车、Tab键作为一个变量的输
 入结束,最后一个变量输入结束必须以回车作为结束符

解决办法:
 1、在%c和%c之间添加空格或者逗号(输入原样输入)
 2、加%*c, *代表的是抑制符

1.3 字符的输入输出

1.3.1 输入

 int getchar(void);
 返回值:从键盘得到的字符的ASCII码值
 char a;
 a = getchar();

1.3.1 输出

 int putchar(int c);
 参数:要输出的ASCII码值

案例

 1、若有以下定义语句:int u=010,v=0x10,w=10; printf(“%d,%d,%d\n”,u,v,w); 则输出结果是____8 16 10______。
 3、下面程序的输出是___11 013 0xC______。
 main()
 {
   int k=11;
    printf(“k=%d,k=%o,k=%x\n”,k,k,k);}
 4、若有以下定义语句:
     int a=5; 
     printf(“%d\n”,a++); 
 则输出结果是_____5_______。
 5、设x为int型变量,执行以下语句,
     x=10; x+=x-=x-x; 
 x的值为______20____。
 6、若定义x和y为double型变量,则表达式x=1, y=x+3/2的值是_2.0000_。
 7、若t为double型变量,表达式t=1, t+5, t++的值是___1.00 ______。

2、控制语句

c语言三大结构(顺序结构、选择结构、循环结构)

2.1 顺序结构

语句按照一定的先后顺序去执行

2.2 选择结构

2.2.1 单分支选择语句

 if(表达式)//当表达式的值为真时,执行if中的语句
 {
     语句;
 }
 //注意:如果不写大括号默认只执行一条语句

2.2.2 双分支选择语句

 if(表达式)
 {
     语句1;
 }
 else
 {
     语句2;
 }
 //当表达式的值为真时,执行语句1,否则执行语句2

案例

 输入一个年份,判断是平年还是闰年

2.2.3 多分支if语句

 if(表达式1)
 {
     语句1;
 }
 else if(表达式2)
 {
     语句2;
 }
 else if(表达式3)
 {
     语句3;
 }
 ...............
 else if(表达式n)
 {
     语句n;
 }
 else
 {
     语句n+1;
 }
 //从上至下依次判断表达式的值,如果表达式的值为真,执行相对应的语句,跳出整个if语句

案例

 输入一个分数,判断等级
 60以下:D
 60~70:B
 70~80:C
 80以上:S

2.2.4 switch语句

 switch(表达式)
 {
     case 标号1:
         语句1;
     case 标号2:
         语句2;
         .......
     case 标号n:
         语句n;
     default:
         语句n+1;
 }
 //(1).表达式不能为float型
 //(2).标号必须为常量
 //(3).表达式=标号时,执行冒号后的语句,a、直到switch,case语句结束为止,b、或者碰到break语句结束
 int a = 5;
 switch(a)
 {
 case 2: printf(“2\n”);
 default: printf(“不存在该选项\n”);
 case 4:
 case 1: printf(“1\n”);
 case 3: printf(“3\n”);break;
 case 0: printf(“0\n”);
 }

作业

 1、整理笔记
 2、输入年份,月份,输出该年的该月有多少天
 3、输入年月日,输出这一天是这一年的第多少天
 4、预习循环结构

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值