C语言经典编程282例10

067 判断偶数

利用单条件单分支选择语句判断输入的一个整数是否偶数?

#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

  main()
{
    
    
	int i;
	
	scanf("%d", &i);
	
	if(i % 2 == 0)
	{
    
    
		printf("该数是偶数\n");
	 } 
	 else
	 {
    
    
	 	printf("该数是奇数\n");	
	  } 
	  
   printf("\n");
 }
 

在这里插入图片描述

068 判断字母是否大写

输入一个字母,判断是否为大写字母,如果是,则提示“uppercase-letter!”,否则提示“other letter!”

#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

  main()
{
    
    
	char i;
	
	scanf("%c", &i);
	
	if(i >= 65 && i <= 90)
	{
    
    
		printf("uppercase-letter\n");
	 } 
	 else
	 {
    
    
	 	printf("other letter\n");	
	  } 
	  
   printf("\n");
 }

069 检查字符类型

要求用户输入一个字符,通过对ASCII码值范围的判断,输出结果。
在这里插入图片描述

#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>



  main()
{
    
    
	char i;
	
	scanf("%c", &i);
	
	if(i >= 65 && i <= 90)
	{
    
    
		printf("大写字母\n");
	} 
    else if(i >= 91 && i <= 122)
	{
    
    
	 	printf("小写字母\n");	
	} 
	 else if(i >= 48 && i <= 57)
	{
    
    
	 	printf("数字\n");	
	} 
	else
	{
    
    
		printf("特殊字符\n");	
	 } 
	
   printf("\n");
 }

070 求最低分和最高分

要求从键盘上输入某个学生的四科成绩,求出该学生的最高分和最低分

先将 max,min将直接赋初值,然后在逐一比较

// ———— 官方
#include<stdio.h>

  main()
{
    
    
 	int n1, n2, n3, n4, max, min;
	
	scanf("%d%d%d%d", &n1, &n2, &n3, &n4);
	
	min = max = n1;
	
	if(n2 < min)
	{
    
    
		min = n2;
	}
	else if(n2 > max)
	{
    
    
		max = n2;
	}
	
	 if(n3 < min)
	{
    
    
		min = n3;
	}
	else if(n3 > max)
	{
    
    
		max = n3;
	}
	
	 if(n4 < min)
	{
    
    
		min = n4;
	}
	else if(n4 > max)
	{
    
    
		max = n4;
	}
  	printf("最低 分: %d\n", min);
  	printf("最高 分: %d\n", max); 	
   printf("\n");
 }
 

先排序再给max,min赋值

// ———— ME ——————————————

#include<stdio.h>

  main()
{
    
    
 	int n1, n2, n3, n4, t, max, min;
	
	scanf("%d%d%d%d", &n1, &n2, &n3, &n4);

	if(n1 > n2)
	{
    
    
		t = n1;
		n1 = n2;
		n2 = t;
	}
	if(n1 > n3)
	{
    
    
		t = n1;
		n1 = n3;
		n3 = t;
	}
	if(n1 > n4)
	{
    
    
		t = n4;
		n1 = n4;
		n4 = t;
	}
	if(n2 > n3)
	{
    
    
		t = n2;
		n2 = n3;
		n3 = t;
	}
	if(n2 > n4)
	{
    
    
		t = n2;
		n2 = n4;
		n4 = t;
	}
	if(n3 > n4)
	{
    
    
		t = n3;
		n3 = n4;
		n4 = t;
	}
  	
  	min = n1;
  	max = n4;
  	
  	printf("最低 分: %d\n", min);
  	printf("最高 分: %d\n", max);
  	
   printf("\n");
 }
 

071 模拟自动售货机

设计一个自动售货机的程序,运行程序,提示用户输入要选择的选项,当用户输入后,提示选择的内容,用switch
在这里插入图片描述

#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

  main()
{
    
    
   	int n;
   
   	printf("***************\n");
  	printf("可选择选项:\n");
  	printf("1:巧克力\n");
  	printf("2:蛋糕\n");
	printf("3:可口可乐\n");
   
   	scanf("%d", &n);
   	
   	switch(n)
	{
    
    
		case 1:
			printf("选择巧克力\n");
			break;
		case 2:
			printf("选择蛋糕\n");
			break;
		case 3:
			printf("选择可口可乐\n");
			break;
		default:
			printf("选择错误!\n");
			break;
	}
	 
   	printf("\n");
 }

在这里插入图片描述
switch的说明
在这里插入图片描述
在这里插入图片描述

072 计算工资

已知某公司员工底薪为500元,员工销售的软件金额与提成方式:
在这里插入图片描述
用switch语句编写程序,求员工工资。

在提成时,整数倍的要多加1,防止 5000, 2000, 10000 以内的数。


#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

  main()
{
    
    
	float money = 500.0; 
   	int score;
    int n;
   	
   	scanf("%d", &score);
   	
   	if(score / 1000 == 0)
   	{
    
    
   		n = score / 1000 + 1; //整数要加1
	}
	else
	{
    
    
		n = score / 1000 ;
	}
   
   	switch(n)
	{
    
    
		case 0:
		case 1:
		case 2:
			money = 500;
			break;
			
		case 3:
		case 4:
		case 5:
			money += score * 0.08;
			break;
			
		case 6:
		case 7:
		case 8:
		case 9:
		case 10:
			money += score * 0.1;
			break;
			
		default:
			money += score * 0.12;
			break;
	}
	
	printf("工资%f \n", money);
  	
   	printf("\n");
 }
 

073 平方和值判断

要求输入整数a和b,若a平方 + b平方结果大于100,则输出a平方 + b平方值; 否则输出a+b。

#include<stdio.h>
#include<math.h>

  main()
{
    
    
   	int a, b;
   
   	scanf("%d %d", &a, &b);
   	
   	if(a *a + b * b > 100)
   	{
    
    
   		printf("a *a + b * b = %d\n", a *a + b * b);
	}
	else
	{
    
    
		printf("a + b  = %d\n", a + b );
	}
  
   	printf("\n");
 }

074 加油站加油

某加油站有a ,b ,c 3种汽油,售价3.25、3.00、2.75(元/千克),也提供“自己加”或“加油站加”两个选项等级,这样用户可以得到5%或10%优惠。编程实现针对用户输入加油量x,汽油品种y和服务类型z;输出用户应付金额。

发现scanf输入问题?
原因:输入时,有时是因为开始输入法是中文,造成错误,不要留多余空格。


#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>



  main()
{
    
    
   //	int  z;
    float x, money = 0, m1, m2;
    char y, z; 
    
   	scanf("%f,%c,%c", &x, &y, &z);
   
   	
   	switch(y)
   	{
    
    
   		case 'a':
   			m1 = 3.25; 
		   break;
		   
		case 'b':
			m1 =  3.00; 	
		   break;
		   
		case 'c':
			m1 =  2.75; 	
		   break;
		   
		default:
			m1  = 0;
			printf("没有该汽油\n" );  
		   break;	     
    }
    
    switch(z)
   	{
    
    
   		case 'd':
   			m2 = 0.05; 
		   break;
		   
		case 'f':
			m2 =  0.1; 	
		   break;
		   
		default:
			m2  = 0;
			printf("没有该方式\n" );  
		   break;	     
    }
    
    money = x * m1 - m1 * x * m2; 
  
  	printf("money = %d\n" ,money);  
  
   	printf("\n");
 }
 

075 简单计数器

从键盘上输入数据并进行加、减,乘、除四则运算(以a运算符b 的形式输入),判断输入的数据是否可以进行计算,若能进行计算则输出计算结果。

进行除法操作除数不能为0,

#include<stdio.h>
#include<math.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

  main()
{
    
    
   float a, b, sum;
   char way;
   scanf("%f %c %f", &a, &way, &b);
   
   switch(way)
   {
    
    
   	 case '+':
   	 	sum = a + b;
		break;
		
	 case '-':
	 	sum = a - b;
		break;
		   	
 	 case '*':
 	 	sum = a * b;
		break;  
		
 	 case '/':
 	 	if(b != 0)
 	 	{
    
    
 	 		sum = a / b;
		}
		else
		{
    
    
			sum = 0;
		  	printf("除数不能为0\n");
		}
 	 	
		break;
		  
	 default:
	 	printf("不是四则运算\n");
		break;  	
	 }  
	 
	 printf("%f\n", sum);
   	printf("\n");
 }
 

猜你喜欢

转载自blog.csdn.net/qq_41070511/article/details/110928671