实验二

 

 

part 1: 格式化输入和输入函数

(1)printf函数的应用

#include <stdio.h> 
int main() {    
    int x=1234;    
    float f=123.456;    
    double m=123.456;    
    char ch='a';    
    char a[]="Hello, world!";
    int y=3, z=4;    
    printf("%d %d\n", y, z);   
    printf("y=%d, z=%d\n", y,z);    
    printf("%8d,%2d\n", x,x);  
    printf("%f, %8f, %8.1f, %0.2f, %.2e\n",f,f,f,f,f);   
    printf("%lf\n",m);   
    printf("%3c\n", ch);  
    printf("%s\n%15s\n%10.5s\n%2.5s\n%.3s\n",a,a,a,a,a);  
    return 0;
}

(2)scanf函数的应用

这个原来代码的错误在于double类型数据的输入和输出,都应该用%lf型(千万要牢记住)

part 2:单个字符输出(putchar)和输入字符(getchar)

(1)单个字符输出putchar

#include <stdio.h> 
int main() 
{
    char ch;
    ch = 'A';
    putchar(ch);
    putchar(ch+32);
    putchar('\x41');
    putchar('\n');
    return 0;
}

表明了几种不同方式的字符变量赋值方法,第一种是直接输出‘’中的字符,第二种是进行变小写字母后的输出,第三种是按十六进制的转义字符输出,接着换行

(2)单个字符输入函数getchar

#include <stdio.h> 
int main(){    
    char ch;    
    ch = getchar();
    putchar(ch);
    printf("%c",ch); 
    return 0;
}

定义一个字符变量,然后从键盘输入一个字符赋值给ch变量,最后两行是以printf和putchar两种不同的输出方式输出字符

part 4:switch,switch语句的运用

(1)不去掉break

#include <stdio.h> 
int main() {    
    int level;    
    printf("输入现在状态等级(1-5):  ");    
    scanf("%d",&level);
    switch(level) {        
      case 1: printf("high翻了:)\n"); break;       
      case 2: printf("low爆了:(\n"); break;       
      default: printf("一言难尽,无法概括。。。\n");
    }   
    return 0; 
}

switch,switch语句和if,else if语句的意义差不多,用来表示多分支语句的情况,注意每一个case语句完成后加的break的跳过作用,以及最后的default的终结情况。

(2)我们来看看去掉break的情况

#include <stdio.h> 
int main() {    
    int level;    
    printf("输入现在状态等级(1-5):  ");    
    scanf("%d",&level);
    switch(level) {        
      case 1: printf("high翻了:)\n");    
      case 2: printf("low爆了:(\n");    
      default: printf("一言难尽,无法概括。。。\n");
    }   
    return 0; 
}

*若在窗口中输入1

看到三个情况均依次计算

*若在窗口中输入2

我们能观察到输入2之后跳过了第一个程序,可是还是继续依次执行后面的程序。

part 5:自己编写程序

/*做选择题*/
#include<stdio.h>
int main(){
    char ch;
    printf("请输入你的答案(A,B,C or D):");
    scanf("%c",&ch);
    if (ch=='A')
    printf("binggo, you are right");
    else
    printf("try again");
    return 0;
} 

 

 

实验内容及总结:

(1)printf输出函数的常用字符,c按字符输出,d按十进制整数输出,f按浮点数输出(小数点后自保留六位),lf按double型输出和输入,s按字符串输出,除e,x可大写,其他必须小写。

(2)控制字符长度小于实际长度时,按实际长度输出

(3)if语句里面感觉大体的框架结构已经懂了,但是实际自己操作的时候,有点懵逼,不知道括号应该怎么办,有时候会出现一点点小小的混乱,但是自己多加练习就会解决这个问题的。

(4)关于选择题自己编程的感悟,自己发现了一个问题就是,printf后面不知道到底该再如何用输入函数,但是通过这个练习后自己明白了,还有就是单语句的时候可以不加括号,当有多个语句的时候再加括号,不然这样就会显得十分冗杂。

(5)注意putchar函数后面直接加()就好了,但是getchar的使用必须先定义一个字符ch,再赋值使ch=getchar()千万不要忘记加括号了

 

转载于:https://www.cnblogs.com/rainbowhorse/p/10629069.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值