实验二

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

实验二_第1张图片

有些数字前多了空格,改变了其输出值的宽度和精度

123.456001,123.5,123.46,1.23e+002与初始值不一致,

原因:

计算机中采用二进制,输入数只能四舍五入的转化为二进制存储,取出时无法还原,出现了浮点数的精确度问题。

Hello,world!后三个与初始值不一致。

原因:

.n对字符串,指定实际输出位数

#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);          //未加l 
    printf("%f,%lf\n",x,y);
    return 0; 
} 

实验二_第2张图片

#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");
    }
    else 
       printf("不能构成三角形\n");
       
    return 0;
}

实验二_第3张图片

实验二_第4张图片

实验二_第5张图片

实验二_第6张图片

实验二_第7张图片

#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请输入, 选择你想使用的屏幕配色方案:    ");

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

实验二_第8张图片

实验二_第9张图片

实验二_第10张图片

实验二_第11张图片

#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请输入, 选择你想使用的屏幕配色方案:    ");

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

 

#include
int main(){
    printf("请输入一个三位以内的十进制整数:\n计算其逆序数");
    int a,b1,b2;
    scanf("%d",&a);
    b1=((a/10)%10+(a%10)*10);
    b2=((a/100)%10+((a/10)%10)*10+(a%10)*100);
    if(a>=-9&&a<=9) 
         printf("%d正序和逆序相同",a);
    else if((a>=10&&a<=99)||(a>=-99&&a<=-10))
    {
         if(b1==a)
              printf("%d正序和逆序相同",a);
         else
              printf("%d正序和逆序不同",a); 
    } 
    else {
         if(b2==a)
              printf("%d正序和逆序相同",a);
         else
              printf("%d正序和逆序不同",a);
        }
}

实验二_第12张图片

实验二_第13张图片

实验二_第14张图片

实验二_第15张图片

#include 
#include 
int main()
{
    int y,m,day,d1;
    
    scanf("%d %d",&y,&m);
    d1=28+(y%4==0&&y%100||y%400==0); 
    if(y<0 || m<1 || m>12)
    {
        printf("输入的数据错误!\n");
        exit(0);
    }
     if(m==1 || m==3 || m==5 || m==7 || m==8 || m==10 || m==12)
        printf("day=31",day);
     else if(m==4 || m==6 || m==9 || m==11)
        printf("day=30",day);
       else 
        printf("day=%d",d1);
    return 0;
} 

实验二_第16张图片

实验二_第17张图片

实验二_第18张图片

 

实验二_第19张图片

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

实验二_第20张图片

实验二_第21张图片

实验二_第22张图片

实验二_第23张图片

实验总结与体会

踩得坑:前面输的习惯导致用if语句后老加分号每次都被说else前没有if。。语句大概规则是懂了,但要混在一起输入还是会乱,小错误不断。

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