实验2

Posted on 2019-03-28 20:10  ...sj  阅读(179)  评论(0)    收藏  举报
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,%.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; }

 

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

getchar():

 

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

 

putchar():

 

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

 

单分支if:

#include <stdio.h>
int main()
{
    int a,b;
    int t;
    printf("输入两个整数给a和b:\n");
    scanf("%d%d",&a,&b);
    if(a>b)
    {
        t = a;
        a = b;
        b = t;
    }
    printf("a=%d,b=%d\n",a,b);
    return 0;
}

 

两分支if:

 

#include <stdio.h>
int main()
{
    int n;
    printf("输入一个整数n: \n");
    scanf("%d",&n);
    if(n%2)
        printf("n是奇数.\n");
    else
        printf("n是偶数.\n");
    return 0; 
} 

 

多分支if:

 

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

 

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

 

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

 

 

自编:

 

#include <stdio.h>
int main()
{
    char ch;
    printf("请输入你的答案(A,B,C or D)\n");
    scanf("%c",&ch);
    if(ch == 'A')
        printf("Binggo, you are right~\n");
    else
        printf("try again~\n");
    return 0;
}

 

总结:

1.%d, %f, %c, %e, %s的用法:%d以十进制整数输出,%f以浮点数输出,%c以字符输出,%e以指数形式输出,%s以字符串输出

%5d, %lf, %.3f, %6.2f的用法:%5d以5位整形输出,若不足5位则在前面补空格,若超出5位,则按实际位数输出;%lf以双精度浮点型输出,%.3f保留3位小数,%6.2f指输出时长度占6位,其中小数点后占2位;

2.有无break的区别:当执行到break语句时,立即跳出switch语句体,若无break,则switch语句会继续运行下去,所以实验中会出现2个答案。

 

博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3