文章内容较适合初学者,可用于练手,熟悉C语言基础语法。

一.涉及关键内容:

使用条件语句,if语句,switch语句构造选择结构程序

二.设计内容(题目+源代码)

1.编程实现输入一个英文字母,如该字符为小写字母则转为大写输出;如该字符是大写字母则转为小写输出。
#include "stdio.h"
int main()
{
    char ch;
    printf("请输入一个字母:");
    scanf("%c",&ch);
    if (ch >='a'&&ch <='z')
        ch=ch-32;
    else if (ch >='A'&&ch <='Z')
        ch=ch+32;
    else
        printf("请输入一个正确的字母:"); 
    printf("%c\n",ch);
    return 0;
}

试运行:

2.编程实现:输入某年年份,判断该年是否为闰年。
(提示闰年算法:普通年能被4整除且不能被100整除的为闰年(如2004年),世纪年能被400整除的是闰年(如2000年))
#include <stdio.h>
int main()
{
    int a;
    scanf("%d",&a);
    if(a%4==0 && a%100!=0)
        printf("是闰年");
    else if(a%400==0)
        printf("是闰年");
    else
        printf("不是闰年");
    return 0;
}

或者:

#include <stdio.h>
int main()
{
    int a;
    scanf("%d",&a);
    if(((a%4==0) && (a%100!=0)) || (a%400==0))
        printf("是闰年");
    else
        printf("不是闰年");
    return 0;
}

试运行:

3.利用switch语句实现所得税统计,输入总收入,输出应缴纳所得税。
税率如下:

0~2999元

0%

3000~4999元

3%

5000~7999元

10%

8000元以上

15%

如,总收入为6000元,则其应纳税额=(6000-4999)*10%+(4999-2999)*3%=160.1元。
#include "stdio.h"
int main()
{
    float income,tax;
    int i;
    printf("总收入为:");
    scanf("%f",&income); 
    i=income/1000;
    if (0<=i<=2)
        i=0;
    if (3<=i<=4)
        i=1;
    if (5<=i<=7)
        i=2;
    else 
        i=3;
    switch(i)
    {
        case  0 :tax=0;break;
        case  1 :tax=(income-2999)*0.03;break;
        case  2 :tax=(income-4999)*0.1+(4999-2999)*0.03;break;
        default :tax=(income-7999)*0.15+(7999-4999)*0.1+(4999-2999)*0.03;break;
    }
    printf("应缴纳所得税%.1f",tax);
    return 0;
}

试运行:

4.从键盘输入4个数,将其中最大的数字输出。
#include "stdio.h"
int main()
{
    float a,b,c,d,max;
    printf("请输入四个数:");
    scanf("%f%f%f%f",&a,&b,&c,&d);
    if (a>b && a>c && a>d)
        max=a;
    else if (b>a && b>c && b>d)
        max=b;
    else if (c>a && c>b && c>d)
        max=c;
    else
        max=d;
    printf("最大的数为%.2f",max);
    return 0;
}

也可以使用循环语句找出最大值。

#include <stdio.h>
int main()
{
    float a[4];
    int i;
    float max;
    printf("请输入四个数:"); 
    for(i=0;i<4;i++)
    {
        scanf("%f",&a[i]);
    }
    max=a[0];
    for(i=1;i<4;i++)
    {
        if(a[i]>max)
        {
            max=a[i];
        }
    }
    printf("最大的数为%.2f",max);
    return 0;
}

试运行:

注:本文中代码均应使用Dev C++运行,使用其它编译器可能出现各种语法错误。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐