实验二

#include
#include
int main(){
    printf("输入分数(0~100):");
    int a;
    scanf("%d",&a);
    if(a<0||a>100)
    
    {printf("输入数据错误\n");
    exit(0);
    }
    switch(a/10)
    {case10:printf("优秀/n");break;
    case9:printf("优秀/n");break;
    case8:printf("良好/n");break;
    case7:printf("中等/n");break;
    case6:printf("及格/n");break;
    default:printf("不及格");break; 
    }
    
    
    return 0;
} 

实验二_第1张图片

 

 

实验结论

ex2_1

int main() {
    int x=1234;
    float f=123.456;
    double m=123.456;
    char ch='a';
    char a[]="Hello, world!"; // 定义一个数组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);//不一致,由于m是输出数据的域宽,数据长度
    printf("%f, %8f, %8.1f, %0.2f, %.2e\n",f,f,f,f,f);//不一致,由于m是输出数据的域宽,数据长度
    printf("%lf\n",m);
    printf("%3c\n", ch);//%c为字符输出,%s为字符串输出 
    printf("%s\n%15s\n%10.5s\n%2.5s\n%.3s\n",a,a,a,a,a);
    return 0;
}

实验二_第2张图片

 

ex2_2

错误一:scanf 函数后缺少地址符 &

错误二:由于定义x y 为double 类型,所以输入输出须为  lf

#include 
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("%lf,%lf\n",x,y);
    return 0;
} 

实验二_第3张图片

  

ex2_3

 #include 
 int main() {
     double a,b,c;
     scanf("%lf %lf %lf", &a, &b, &c);
     
     if(a<0 || b<0 || c<0)
         printf("不能构成三角形\n");
     else if(a+b>c && a+c>b && b+c>a) {
         if(a==b && a==c)   
             printf("构成等边三角形\n");
         else if(a==b || a==c || b==c)   
             printf("构成等腰三角形\n");    
         else
             printf("构成一般三角形\n");
     }
     else
         printf("不能构成三角形\n");
         
     return 0;
} 

实验二_第4张图片

实验二_第5张图片

 

#include 
 int main() {
     double a,b,c;
     scanf("%lf %lf %lf", &a, &b, &c);
     
     if(a<0 || b<0 || c<0)
         printf("不能构成三角形\n");
     else if(a+b>c && a+c>b && b+c>a) {
         if(a==b||a==c||b==c)   
         if(a==b&&a==c)
      
             printf("构成等边三角形\n");    
         else
             printf("构成等腰三角形\n");
     }
     else
         printf("构成一般三角形\n");
         
     return 0;
} 

结论:替换代码后仍然成立

 

ex2_4

#include 
#include 
int main() {
    char choice;
    
    // 显示菜单 
    printf("输入0~9以内的数字,选择屏幕背景色前景色方案: \n");
    printf("1-\t黑底绿色\n");
    printf("2-\t白底黑色\n");
    printf("3-\t蓝底白色\n");
    printf("其它-\t黑底白色(默认)\n");
    printf("\n请输入, 选择你想使用的屏幕配色方案:    ");
    
    // 要求用户从键盘输入0~9的数字,选择屏幕配色方案 
    choice = getchar();
    
    // 根据用户输入,设置屏幕配色方案 
    if (choice == '1') {
        system("color 02");
        printf("《黑客帝国》一类的影视剧常见这种屏幕色:)\n"); 
    } 
        
    else if(choice == '2') {
        system("color f0");
        printf("大部分编辑器默认是这种配色:)\n");    
    }
        
    else if(choice == '3') {
        system("color 1f");
        printf("这是机器蓝屏故障时的不讨喜色:)\n");
    }
        
    else {
        system("color 0f");
        printf("控制台程序默认小黑窗:)\n");        
    }
        
        
    printf("programming is fun, just try@_@\n");
    
    
    return 0;
} 

实验二_第6张图片

 

 实验二_第7张图片

 

 实验二_第8张图片

 

 choice 换成 int 后的代码

#include 
#include 
int main() {
   int  choice;
    
    // 显示菜单 
    printf("输入0~9以内的数字,选择屏幕背景色前景色方案: \n");
    printf("1-\t黑底绿色\n");
    printf("2-\t白底黑色\n");
    printf("3-\t蓝底白色\n");
    printf("其它-\t黑底白色(默认)\n");
    printf("\n请输入, 选择你想使用的屏幕配色方案:    ");
    
    // 要求用户从键盘输入0~9的数字,选择屏幕配色方案 
    scanf ("%d",&choice);
    
    // 根据用户输入,设置屏幕配色方案 
    if (choice == 1) {
        system("color 02");
        printf("《黑客帝国》一类的影视剧常见这种屏幕色:)\n"); 
    } 
        
    else if(choice == 2) {
        system("color f0");
        printf("大部分编辑器默认是这种配色:)\n");    
    }
        
    else if(choice == 3) {
        system("color 1f");
        printf("这是机器蓝屏故障时的不讨喜色:)\n");
    }
        
    else {
        system("color 0f");
        printf("控制台程序默认小黑窗:)\n");        
    }
        
        
    printf("programming is fun, just try@_@\n");
    
    
    return 0;
} 

实验二_第9张图片

 

 (结果不再一一展示)

 

 

part  3(编码)

 

#include 
 int main() {
     int a,b,c,d,e,f;
     
     printf("请输入一个三位以内的十进制整数:");
     
     scanf("%d",&a) ;
      if    (a>99&&a<1000)
      {
          b=a%10;
          c=a/10;
          d=c%10;
          e=c/10;
       
      f=100*b+ 10*d+e;
     
      }
    
     else if    (a>9&&a<100)
      {
          b=a%10;
          c=a/10;
          d=c%10;
          e=c/10;
       
      f=(100*b+ 10*d+e)/10;
     
      }
      else if    (a>0&&a<10)
      {
          b=a%10;
          c=a/10;
          d=c%10;
          e=c/10;
       
      f=(100*b+ 10*d+e)/100;
     
      }
    
     
     
    
     if (a!=f)
     printf("不同") ; 
     else if (a==f)
        printf("相同");
     return 0; 
 }
 

实验二_第10张图片

 

 实验二_第11张图片

 

 实验二_第12张图片

 

#include

int main(){
  int a,b;
  printf("输入年份 月份");
  scanf("%d%d", &a,&b);
  if(a%4==0&&a%100!=0||a%400==0&&b==2)
   printf("%d年%d月是28天",a,b);
    else if(a%4!=0&&b==2)
     printf("%d年%d月是29天",a,b);
     else if(b==1,3,5,7,8,10,12)
      printf("%d年%d月是31天",a,b);
      else if(b==4,6,9,11)
       printf("%d年%d月是30天",a,b);
     
    
    
    
    return 0;
}

实验二_第13张图片

 

 实验二_第14张图片

 

 实验二_第15张图片

 实验二_第16张图片

 

 

#include
#include
int main(){
    printf("输入分数(0~100):");
    int a;
    scanf("%d",&a);
    if(a<0||a>100)
    
    {printf("输入数据错误\n");
    exit(0);
    }
    switch(a/10)
    {
    case 10:
    case 9:printf("优秀\n");break;
    case 8:printf("良好\n");break;
    case 7:printf("中等\n");break;
    case 6:printf("及格\n");break;
    default:printf("不及格");break; 
    }
    
    
    return 0;
} 

实验二_第17张图片

 

 实验二_第18张图片

 

 

总结与体会

体会:熟悉各种符号,注意地址符,以及字符时需要的单引号

         我觉得if虽然有时可以省略{,但是对我个人来说还是都写,容易看清代码

       注意break是跳出switch 那整个的

 

你可能感兴趣的:(实验二)