实验二

PART 1:

%d用于按十进制整数输出,%f用于按浮点数输出,%c用于按字符输出,%e用于按指数形式输出:double a =567.789; printf("%e”,a); 5.677890e+002 ,%s用于按字符串输出(ABC)

%5d 表示按宽度5输入一个整数赋值给变量,左补空格;%lf在d、o、x、u前,指定精度为long且数据类型为float,在e、l、g前,指定输出精度为double且数据类型为float;%.3f表示精度取三;%6.2f表示精度为6且小数点后取一位

在double类型中scanf中必用%lf。

PART 2:改正后为

#include <stdio.h>
int main(){
    double x,y;
    char c1,c2,c3;
    int a1,a2,a3;
    scanf("%d%d%d",&a1,&a2,&a3);
    printf("%d,%d,%d\n",a1,a2,a3);
    scanf("%c%c%c",&c1,&c2,&c3);
    printf("%c%c%c\n",c1,c2,c3);
    scanf("%lf,%lf",&x,&y);
    printf("%f,%lf\n",x,y);
      return 0;
}

在第六行中 scanf()需要&分离变量,在第十行中,由于为double类型 scanf()中必须要用%lf。

PART 3:编程练习

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

结果:

PART 4:switch语句

#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;
} 

PART 5:

#include <stdio.h>
  int main(){
      char X;
      printf("请输入正确答案(A,B,C or D):");
      scanf("%c",&X);
       switch(X){
           case 'A' :printf("bingo,you are right!\n");break;
           default:printf("try again~\n");break;
       }
       return 0;
  } 

结果:

——————————————————————总结—————————————————————————————————————————————————————————

switch后面括号里面的表达式的值必须为整型或者字符型,scanf()中要用地址符&来分离变量

还是要在编程中多加练习,熟记固有的编程结构。

——————————————————————————————————————————————————————————————————————————————————————————

互评网址:https://www.cnblogs.com/zwl415/p/10639305.html 

                  https://www.cnblogs.com/mittttty/p/10639206.html   

                  https://www.cnblogs.com/lr15910743769/p/10638941.html

posted @ 2019-03-30 09:47  1291  阅读(84)  评论(0编辑  收藏  举报