中国大学mooc编程题在线测试第五周

该博客介绍了多个编程题目,包括6位密码输入检测、整型数据位数判断、奇偶数计数、球的反弹高度计算、数字位数统计以及猴子吃桃问题的扩展,涉及用户输入检测、数值计算和递推算法等编程技巧。
摘要由CSDN通过智能技术生成

6位密码输入检测

题目内容:
从键盘输入6位仅由数字0~9组成的密码。用户每输入一个密码并按回车键后,程序给出判断:如果是数字,则原样输出该数字,并提示用户目前已经输入了几位密码,同时继续输入下一位密码;否则,程序提示”error”,并让用户继续输入下一位密码。直到用户输入的密码全部是数字为止。
以下为程序的运行结果示例:
Input your password:
1↙
1, you have enter 1-bits number
6↙
6, you have enter 2-bits number
a↙
error
d↙
error
4↙
4, you have enter 3-bits number
6↙
6, you have enter 4-bits number
8↙
8, you have enter 5-bits number
2↙
2, you have enter 6-bits number

输入提示信息:”Input your password:\n”
输入格式: “%c”
输出格式:
如果输入的是数字,输出格式为:”%c, you have enter %d-bits number\n”
如果输入的不是数字,输出提示信息:”error\n”

#include <stdio.h>
int main( )
{
    int count=0;int ch;
    printf("Input your password:\n");
    while(count<6)
    {

        scanf("%c",&ch);

        if(ch>='0'&&ch<='9')
        {
            count++;
            printf("%c, you have enter %d-bits number\n",ch,count);
        }
        else
        {
            printf("error\n");
        }
        getchar();
    }
    return 0;
}
#include <stdio.h>
int main( )
{
    int count=0;int ch;
    printf("Input your password:\n");
    while(count<6)
    {

        scanf("%c%*c",&ch);
        if(ch>='0'&&ch<='9')
        {
            count++;
            printf("%c, you have enter %d-bits number\n",ch,count);
        }
        else
        {
            printf("error\n");
        }
    }
    return 0;
}

判断一个整型数据有几位v1.0

题目内容:
从键盘输入一个整型数据(int型),编写程序判断该整数共有几位。例如,从键盘输入整数16644,该整数共有5位。

程序运行结果示例1:
Please enter the number:
21125↙
21125: 5 bits

程序运行结果示例2:
Please enter the number:
-12234↙
-12234: 5 bits

输入提示信息:”Please enter the number:\n”
输入格式: “%d”
输出格式:”%d: %d bits\n”

#include <stdio.h>
int main()
{
    int n,count=1,tem,sign=1;
    printf("Please enter the number:\n");
    scanf("%d",&n);
    tem=abs(n);
    if(n<0)sign=-1;
    while(tem>10)
    {
        count++;
        tem=tem/10;
    }
    printf("%d: %d bits\n",n,count);
    return 0;
}

检测输入数据中奇数和偶数的个数

题目内容:
从键盘输入一系列正整数,输入-1表示输入结束(-1本身不是输入的数据)。编写程序判断输入数据中奇数和偶数的个数。如果用户输入的第一个数据就是-1,则程序输出”over!”。否则。用户每输入一个数据,输出该数据是奇数还是偶数,直到用户输入-1为止,分别统计用户输入数据中奇数和偶数的个数。

程序运行结果示例1:
Please enter the number:
1↙
1:odd
5↙
5:odd
8↙
8:even
9↙
9:odd
12↙
12:even
17↙
17:odd
-1↙
The total number of odd is 4
The total number of even is 2

程序运行结果示例2:
Please enter the number:
-1↙
over!
The total number of odd is 0
The total number of even is 0

输入提示信息:”Please enter the number:\n”
输入格式: “%d”
输出格式:
用户输入的第一个数据就是-1,输出格式:”over!\n”
奇数的输出格式:”%d:odd\n”
偶数的输出格式:”%d:even\n”
输入数据中奇数的个数统计:”The total number of odd is %d\n”
输入数据中偶数的个数统计:”The total number of even is %d\n”

#include <stdio.h>
int main()
{
    int num=0,odd_sum=0,even_sum=0;
    printf("Please enter the number:\n");
    scanf("%d",&num);
    if(num==-1)
    {
        printf("over!\n");
    }
    while(num!=-1)
    {
        if(num==-1)
        {
            continue;
        }
        if(num%2==0)
        {
            even_sum++;
            printf("%d:even\n",num);
        }
        else
        {
            odd_sum++;
            printf("%d:odd\n",num);
        }
        scanf("%d",&num);
    }
    printf("The total number of odd is %d\n",odd_sum);
    printf("The total number of even is %d\n",even_sum);
    return 0;
}

计算球的反弹高度

题目内容:
一个球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下并反弹……,求它在第5次和第10次落地时,分别共经过了多少米?第5次和第10次反弹分别是多高?要求计算结果保留到小数点后3位。用户从键盘输入想要计算的第n次(n<=15)。程序中所有浮点数的数据类型均为float。

程序运行结果示例1:
Input:
5↙
5 times:
287.500
3.125

程序运行结果示例2:
Input:
10↙
10 times:
299.609
0.098

输入提示信息:”Input:\n”
输入格式: “%d”
输出格式:
反弹次数:”%d times:\n”
第n次反弹共经过多少米:”%.3f\n”
第n次的反弹高度:”%.3f\n”

#include <stdio.h>
int main()
{
    int num;
    float high=100,total=100;
    printf("Input:\n");
    scanf("%d",&num);
    printf("%d times:\n",num);
    while(num-->
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值