【作业3】应用分支与循环结构解决问题

 

1.输入一个整数 x,计算并输出下列分段函数  sign(x)  的值

#include<stdio.h>
int main(void)
{
 int x;/*定义变量*/
 printf("请输入 x:");
 scanf("%d",&x);
 /*条件语句*/
 if(x<0){
  printf("y=1\n");
 }
  if(x=0){
   printf("y=0\n");
  }
  else{
   printf("y=-1\n");
  }
  return 0;
}

2.输入一个正整数 n,再输入 n 个学生的成绩,计算平均成绩,并统计所有及格学生的人数。

#include<stdio.h>
int main(void)
{
 
 int count,i,n;
 double grade,total;/*定义变量*/
 printf("Enter n:");/*提示输入学生人数n*/
 scanf("%d",&n);
 total=0;/*对变量进行赋值0*/
 count=0;
 /*开始循环,循环n次*/
 for(i=1;i<=n;i++){
  
  printf("Enter grade:");
  scanf("%lf",&grade);
  total=total+grade;/*将每次输入的成绩累加给total*/
  if(grade>=60){/*如果输入的成绩大于等于60,则count加1*/
   
   count++;
  }
 }
 printf("Grade average=%.2f\n",total/n);/*输出平均成绩,即为总成绩除以总人数*/
 printf("Number of success=%d\n",count);/*输出几个人数count*/
 return 0;

 

 

 

3输入 15 个字符,统计其中英文字母、空格或回车、数字字符和其他字符的个数

 

#include<stdio.h>
int main(void)
{
 int letter,digit,blank,other;/*定义变量*/
 char ch;/*定义字符型变量*/
 int i;
 letter=digit=blank=other=0;/*赋初值*/
 printf("Enter 15 characters:");/*提示输入字符*/
 /*循环15次*/
 for(i=1;i<=15;i++){
  ch=getwchar();/*字符为键盘输入*/
  /*判断语句*/
  if((ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z'))
  letter++;/*符合条件的加1,下同*/
  else if(ch>='0'&&ch<='9')
  digit++;
  else if((ch='\n')||(ch=' '))
  blank++;
  else
  other++;
  
 }
 printf("letter=%d,digit=%d,blank=%d,other=%d\n",letter,digit,blank,other);/*输出*/
 return 0;
}

 

 4.循环输入多个年份 year,判断该年是否为闰年。判断闰年的条件是:能被  4  整除但不能被100  整除,或者能被  400  整除。输入-1退出程序执行

 

#include<stdio.h>
int main(void)
{
    int i,n,year;/*定义变量*/
    printf("提示:输入-1,结束查询\n");/*输入提示*/
    printf("请输入您需要查询的年份个数n:");
    scanf("%d",&n);
    /*循环n次*/
    for(i=1;i<=n;i++){
        printf("请输入您要查询的年份(如2013):");/*提示输入年份*/
        scanf("%d",&year);
        /*判断语句*/
        if(year==-1)
            break;/*若输入-1,跳出循环*/
        else if((year%4==0)&&(year%100!=0)){
            printf("恭喜您,您输入的年份是闰年\n");
        }
        else{
        printf("抱歉,您输入的年份不是闰年\n");
            }
    }
    printf("感谢您使用本系统,欢迎下次再来!");
    return 0;
}

 

 5.查询水果的单价。有 4 种水果,苹果(apples)、梨(pears)、桔子(oranges)和葡萄(grapes),单价分别是 3.00 元/公斤,2.50 元/公斤,4.10 元/公斤和 10.20 元/公斤。在屏幕上显示以下菜单(编号和选项),用户可以连续查询水果的单价,当查询次数超过 5 次时,自动退出查询;不到 5 次时,用户可以选择退出。当用户输入编号 1~4,显示相应水果的单价(保留两位小数);输入 0,退出查询;输入其他编号,显示价格为 0。

 

#include<stdio.h>
int main(void)
{
    int choice,i;
    double price;
    /*查询商品价格,按0退出*/
        printf("[1]苹果\n");
        printf("[2]梨\n");
        printf("[3]桔子\n");
        printf("[4]葡萄\n");
        printf("[0]退出\n");
    for(i=1;i<=5;i++){/*for语句循环体开始*/
        printf("选择您所需查询的水果:");/*输入提示*/
        scanf("%d",&choice);/*接受用户输入的编号*/
        /*如果输入0,提前结束for循环*/
        if(choice==0)
            break;/*用break跳出for循环*/
        /*根据编号,将相应的价格赋给price*/
        switch(choice){

        case 1:price=3.00;break;/*用break跳出switch语句,下同*/
        case 2:price=2.50;break;
        case 3:price=4.10;break;
        case 4:price=10.20;break;
        default:price=0.0;break;
        }
        /*输出商品价格*/
        printf("price=%0.1f\n",price);
    }/*for 语句循环结束*/
    printf("谢谢惠顾!");/*结束查询,谢谢用户使用*/
    return 0;
}

 

 

 

 

转载于:https://www.cnblogs.com/ly1102385159/p/3403780.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值