当前位置:首页 > 开发 > 编程语言 > 算法 > 正文

C语言homework2,有一个逆序打印数字的小算法

发表于: 2013-03-12   作者:dcj3sjt126com   来源:转载   浏览:
c
摘要: #h1#   0、完成课堂例子 1、将一个四位数逆序打印 1234 ==> 4321 实现方法一: # include <stdio.h> int main(void) { int i = 1234; int one = i%10; int two = i / 10 % 10; int three = i / 100 % 10;
#h1#

 

0、完成课堂例子

1、将一个四位数逆序打印

1234 ==> 4321

实现方法一:

# include <stdio.h>

int main(void)
{
	int i = 1234;
	int one = i%10;
	int two =  i / 10 % 10;
	int three = i / 100 % 10;
	int four = i / 1000 % 10;

	printf("%d%d%d%d\n",one, two, three, four);
	
	return 0;
}

 

实现方法二:小算法实现

# include <stdio.h>

int main(void)
{
	int val;
	int sum = 0;

	printf("请输入您需要倒转的数字:\n");
	scanf("%d", &val);

	while (val)
	{
		sum = sum * 10 + val%10;
		val /= 10;
	}

	printf("%d\n", sum);

	return 0;
}

 

 

2、输入一个整数,判断这个数是几位数。

提示: if

假设:这个数不会超过9999.

# include <stdio.h>

int main(void)
{
	int num;

	printf("请输入一个数字 ");
	scanf("%d", &num);
	
	if ( num/1000 > 0 )
		printf("%d 是一个4位数\n", num);
	else if ( num/100 > 0 ) 
		printf("%d 是一个3位数\n", num);
	else if ( num/10 > 0 )
		printf("%d 是一个2位数\n", num);
	else
		printf("%d 是一个1位数\n", num);

	return 0;
}

 

 

3、输入一个秒数,如8542秒, 输出成xx:xx:xx

135  ==> 00:02:15

# include <stdio.h>

int main(void)
{

	int num;
	int hour;
	int minute;
	int second;

	printf("请输入一个秒数 ");
	scanf("%d", &num);

	hour = num / 3600;
	minute = num%3600 / 60;
	second = num%3600 % 60;

	if ( hour>0 )  
	{
		if (hour/10>0)
			printf("%d:", hour);
		else
			printf("0%d:", hour);
	}
	else
		printf("00:");

	if ( minute > 0 )
	{
		if (minute/10>0)
			printf("%d:", minute);
		else
			printf("0%d:", minute);
	}
	else
		printf("00:");

	if ( second > 0 )
	{
		if (second/10>0)
			printf("%d:", second);
		else
			printf("0%d:", second);
	}
	else
		printf("00");

	return 0;
}

 

 

4、春节回家,如果你的月薪在1W及以上,就座飞机,如果在5K及以上,座高铁,如果在3K及以上,座绿皮或大巴,如果在1.5K以上,骑车回家,否则,走路回家。

请输入月薪,程序输出怎么回家。

# include <stdio.h>

int main(void)
{
	int salary;

	printf("请输入你的月薪:\n");
	scanf("%d", &salary);

	if ( salary>10000 )
		printf("春节我可以坐飞机回家\n");
	else if ( salary>5000 )
		printf("春节我可以坐高铁回家\n");
	else if ( salary> 3000 )
		printf("春节我可以坐绿皮或大巴\n");
	else if ( salary>1500 )
		printf("春节我只能骑车回家了\n");
	else
		printf("春节我只能走路回家了\n");

	return 0;
}

 

 

 

5、从键盘输入月工资总额,五险一金的总额,请计算本月应该缴的个人所得税:

起征额:3500

应纳税所得额: 工资总额 - 起征点 - 五险一金

 

<1500       3%

1500~4500   10% 

4500~9000   20%

9000~35000  25%

35000~55000 30%

55000~80000 35%

>80000      45%

 

10000 -  1800  -  3500 = 4700  = 1500 + 3000 + 200

1500 * 0.03 + 3000 * 0.1 + 200 * 0.2 = 385

 

 

# include <stdio.h>

int main(void)
{
	int salary;
	int insure;
	int start = 3500;
	int must;
	int result;

	printf("请输入您的月薪总额和王险一金的总额,中间用空格分开:");
	scanf("%d %d", &salary, &insure);

	//求出应纳税所得额
	must = salary - start - insure;
	//result = must>1500 ? 1500*0.03 : must*0.03;
	if ( must>1500 )
		result = 1500 * 0.03;
	else
		result = must * 0.03;

	if ( must>4500 )
		result += 3000 * 0.1;
	else 
		result += (must-1500) * 0.1;

	if ( must>9000 )
		result += 4500 * 0.2;
	else 
		result += (must-4500) * 0.2;

	printf("%d", result);

	return 0;
}

 

C语言homework2,有一个逆序打印数字的小算法

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
简述 杨辉三角是二项式系数在三角形中的一种几何排列,n次二项式系数对应杨辉三角形的n+1行。该程序
欢迎访问我的新博客:http://www.milkcu.com/blog/ 原文地址:http://www.milkcu.com/blog/archives
欢迎访问我的新博客:http://www.milkcu.com/blog/ 原文地址:http://www.milkcu.com/blog/archives
作者:邹祁峰 邮箱:Qifeng.zou.job@hotmail.com 博客:http://blog.csdn.net/qifengzou 日期:2013
看到标题是不是想:这么水的题目也往blog里面写,是不是想赚积分想疯了? 好吧,事情是这样的: 学
题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身
Copyright (c) 2012, 烟台大学计算机学院 * All rights reserved. * 作 者: 刘同宾 * 完成日期:20
#include <stdio.h> #include <time.h> #include <stdlib.h> int main() { int x
作者:邹祁峰 邮箱:Qifeng.zou.job@gmail.com 博客:http://blog.csdn.net/qifengzou 日期:2013.1
设链表节点为 typedef struct tagListNode{ int data; struct tagListNode* next; }ListNode, *List
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号