C语言(9)

 (今天进行对一些实例进行编程,来自牛客网初学者入门训练)

1. 输入描述:多组输入,每一行输入大写字母。

    输出描述:针对每组输入输出对应的小写字母。

    备注:多组输入过程中要注意“回车”也是字母,所以要“吸收”(getchar())掉该字母。

    #include <stdio.h>

    int main()

    {

    char ch=0;

    while(scanf("%c\n",&ch)!=EOF)

           {

            printf("%c\n",ch+32);

扫描二维码关注公众号,回复: 13293081 查看本文章

            getchar()

            }

    return 0;

    }

2. 输入描述:多组输入,每一行输入整数n(0 <= n < 31)。

    输出描述:针对每组输入输出对应的2的n次方的结果。

    #include <stdio.h>

    int main()

    {

    int n=0;

    while(scanf("%d\n",&n)!=EOF)

            {

             printf("%d\n",1<<n);

             }

    return 0;

    }

3. 输入描述:多组输入,每组输入仅一行,包括n,h和m(均为整数)。输入数据保证m <= n *        h。(KiKi每h分钟能喝光一盒酸奶,并且KiKi在喝光一盒酸奶之前不会喝另一个,那么经过m分      钟后还有多少盒未打开的酸奶?)

    输出描述:针对每组输入,输出也仅一行,剩下的未打开的酸奶盒数。

    #include <stdio.h>

    int main()

    {

    int n=0;

    int m=0;

    int h=0;

    while(scanf("%d %d %d\n",&n,&m,&h)!=EOF)

             {

              if (m%h==0)

                  printf("%d\n",n-m/h);

              else

                  printf("%d\n",n-m/h-1);

              }

    return 0;

    }

4. 输入描述:一行,连续输入5个整数(范围0~100),用空格分隔。

    输出描述:一行,输出5个数的平均数(保留一位小数)。

    #include <stdio.h>

    int main()

    {

    int a=0;

    int b=0;

    int c=0;

    int d=0;

    int e=0;

    scanf("%d %d %d %d %d\n",&a,&b,&c,&d,&e);

    printf("%.1f\n",(a+b+c+d+e)/5.0);

    return 0;

    }

5. 输入描述:一行,一个十六进制数a,和一个八进制数b,中间间隔一个空格。

    输出描述:一行,a+b的十进制结果。

    #include <stdio.h>

    int main()

    {

    int a=0;

    int b=0;

    scanf("%x %o\n",&a,&b);

    printf("%d\n",a+b);

    return 0;

    }

6. 输入描述:多组输入,每行输入包括一个字符。

    输出描述:针对每行输入,输出该字符是字母(YES)或不是(NO)。

    #include <stdio.h>

    int main()

    {

    char ch=0;

    while(scanf("%c\n",&ch)!=EOF)

          {

          if ((ch>='A'&&ch<='Z')||(ch>='a'&&ch<='z'))

                printf("YES\n")

          else

                printf("NO\n")

          }

    return 0;

    }

总结:1. 多组输入:while(scanf(%d,&n)!=EOF)

           2. 大小写转换:用ASCii码表对照   应+32

           3. 吸收字母:用getchar()

           4. 左移操作符:b=a<<n 等价于 b=a*2^n

               右移操作符:b=a>>n 等价于 b=a/2^n

           5. = 与 == 的区别:=是赋值的意思      ==是等一操作符,判断两边是否相等。 

猜你喜欢

转载自blog.csdn.net/Faith_cxz/article/details/120577739