【c语言】c程序设计--谭浩强--(第四章)--2

// 从键盘输入一个小于1000的正数,输出它的平方根(若平方根不是整数,则输出它的整数部分)
// 要求在输入数据后检查是否为小于1000的正数,若不是则要求重新输入

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

int main()
{
	int a;
	double b;
	printf("请输入一个小于1000的正数:");
	scanf("%d",&a);
	if( a > 0 && a < 1000 )
	{
		b = sqrt(a);
		printf("它的平方根是:%2.0f\n",b);
	}
	else
		printf("输入的数据不在范围,请重新输入:\n");

	return 0;
}

// 有一个函数:
// x < 1 --- y = x      1 <= x < 10 --- y = 2 * x - 1    x >= 10 --- y = 3 * x - 11
// 输入x,求y

#include <stdio.h>

int main()
{
	int x,y;
	printf("请输入x值:");
	scanf("%d",&x);
	if(x < 1)
		y = x;
	else if(x >= 1 && x < 10)
		y = 2 * x - 1;
	else
		y = 3 * x - 11;
	printf("对应的y值是:%d\n",y);
	return 0;
}

// 给出100分制成绩,要求输出成绩等级A,B,C,D,E。90分以上为A,80~89位B,70~79位C ,60~69位D,60以下为E

#include <stdio.h>

int main()
{
	int a;
	printf("请输入成绩:");
	scanf("%d",&a);
	if(a >= 90)
		printf("等级是A\n");
	else if(a >= 80 && a <= 89)
		printf("等级是B\n");
	else if(a >= 70 && a <= 79)
		printf("等级是C\n");
	else if(a >= 60 && a <= 69)
		printf("等级是D\n");
	else
		printf("等级是E\n");

	return 0;
}

// 给一个不多于5位的正整数,要求:
// 1、求出它是几位数
// 2、分别输出每一位数字
// 3、按逆序输出各位数字

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

int main()
{
	int a,b,c,d;
	int count = 1;
	printf("请输入一个不多于5位的正整数:");
	scanf("%d",&a);
	c = a;
	printf("逆序:\n");
	while(c / 10 != 0)
	{
		count++;

		b = c % 10;
		printf("%d\n",b);
		c = c / 10;
	}
	b = c % 10;
	printf("%d\n",b);
	printf("位数是:%d\n",count);
	printf("顺序:\n");
	while(a % 10 != 0)
	{
		d = a / (int)pow(10,(count-1));
		printf("%d\n",d);
		a = a % (int)pow(10,count-1);
		count--;
	}
	return 0;
}

// 企业发放的奖金根据利润提成。
// i <= 100000 --- 10%
// 100000 < i <= 200000 --- 低于100000的10%,高于100000的7.5%
// 200000 < i <= 400000 --- 低于200000同上,高于200000的5%
// 400000 < i <= 600000 --- 高于400000的3%,
// 600000 < i <= 1000000 --- 高于600000的1.5%
// i > 1000000 --- 超过1000000按1%。
// 从键盘输入当月利润i,求应发奖金总数
// if语句

#include <stdio.h>

int main()
{
	int i,j;
	printf("请输入当月利润:");
	scanf("%d",&i);
	if(i <= 100000)
		j = i * 0.1;
	else if( i > 100000 && i <= 200000 )
		j = 100000 * 0.1 + ( i - 100000 ) * 0.075;
	else if( i > 200000 && i <= 400000 )
		j = 200000 * 0.1 + (i - 200000) * 0.05;
	else if( i > 400000 && i <= 600000 )
		j = 400000 * 0.1 + (i - 400000) * 0.03;
	else if( i > 600000 && i <= 1000000)
		j = 600000 * 0.1 + (i - 600000) * 0.015;
	else
		j = 1000000 * 0.1 + (i - 1000000) * 0.01;
	printf("应得的奖金是:%d\n",j);
	return 0;
}

// 企业发放的奖金根据利润提成。
// i <= 100000 --- 10%
// 100000 < i <= 200000 --- 低于100000的10%,高于100000的7.5%
// 200000 < i <= 400000 --- 低于200000同上,高于200000的5%
// 400000 < i <= 600000 --- 高于400000的3%,
// 600000 < i <= 1000000 --- 高于600000的1.5%
// i > 1000000 --- 超过1000000按1%。
// 从键盘输入当月利润i,求应发奖金总数
// switch语句

#include <stdio.h>

int main()
{
	int i,j;
	int c = i / 10000;
	printf("请输入利润:");
	scanf("%d",&i);
	if(c > 10)
		c = 10;
	switch(c)
	{
		case 0:
			j = i * 0.1;
			break;
		case 1:
			100000 * 0.1 + ( i - 100000 ) * 0.075;
			break;
		case 2:
			break;
		case 3:
			200000 * 0.1 + (i - 200000) * 0.05;
			break;
		case 4:
			break;
		case 5:
			400000 * 0.1 + (i - 400000) * 0.03;
			break;
		case 6:
			break;
		case 7:
			break;
		case 8:
			break;
		case 9:
			600000 * 0.1 + (i - 600000) * 0.015;
			break;
		case 10:
			1000000 * 0.1 + (i - 1000000) * 0.01;
			break;
		default:
			break;

	}
	printf("利润是:%d\n",j);
	return 0;
}

// 输入4个整数,要求按由小到大的顺序输出

#include <stdio.h>

int main()
{
    int a[4] ;
    int i,j;
    int temp;
    printf("请输入4个数: ");
    for( i = 0; i < 4; i++ )
    {
        scanf("%d",&a[i]);
    }
    for( i = 0; i < 4; i++ )
    {
        for( j = 0; j < (4-i); j++ )
            if( a[j] > a[j+1] )
            {
                temp = a[j];
                a[j] = a[j+1];
                a[j+1] = temp;
            }
    }
    printf("这4个数由小到大的排列顺序如下:");
    for( i = 0; i < 4; i++ )
    {
        printf("%d ",a[i]);
    }
    printf("\n");
    return 0;
}

// 有4个圆塔。圆心分别为(2,2),(-2,2),(-2,-2),(2,-2),圆半径为1,这4个塔的高度为10,
// 塔以外无建筑物,今输入任意一点的坐标,求该点的建筑高度(塔外高度为0)

#include <stdio.h>

int main()
{
	int x,y,h;
	printf("请输入x,y:");
	scanf("%d%d",&x,&y);
	if(x >= -2 && x <= 2 && y >= -2 && y <= 2)
		h = 10;
	else
		h = 0;
	printf("该坐标处塔高为:%d\n",h);
}

时间: 2024-10-11 12:08:48

【c语言】c程序设计--谭浩强--(第四章)--2的相关文章

c++面向对象程序设计 课后题 答案 谭浩强 第四章

c++面向对象程序设计课后题答案 谭浩强 第四章 1: #include <iostream> using namespace std; class Complex {public: Complex(){real=0;imag=0;} Complex(double r,double i){real=r;imag=i;} double get_real(); double get_imag(); void display(); private: double real; double imag;

c++面向对象程序设计 谭浩强 第三章答案

2: #include <iostream> using namespace std; class Date {public: Date(int,int,int); Date(int,int); Date(int); Date(); void display(); private: int month; int day; int year; }; Date::Date(int m,int d,int y):month(m),day(d),year(y) { } Date::Date(int m

【c语言】c程序设计--谭浩强--(第一章)

闲来无事把谭浩强的书里边的题敲了一遍,,纪念一哈,,纯手工 // 在屏幕上输出 This is a c program. #include <stdio.h> int main() { printf("This is a c program.\n"); return 0; } // 求两个整数之和 #include <stdio.h> int main() { int a,b,c; printf("请输入两个整数:\n"); scanf(&q

【c语言】c程序设计--谭浩强--(第二章)--2

// 有两个瓶子a和b,分别盛放醋和酱油,要求将它们互换 #include <stdio.h> int main() { int a,b,c; printf("请输入两个整数:"); scanf("%d%d",&a,&b); c = a; a = b; b = c; printf("交换后的结果是:%d %d\n",a,b); return 0; } // 依次将10个数输入,要求输出其中最大的数 #include &

c++面向对象程序设计 谭浩强 第五章答案

1: #include <iostream> using namespace std; class Student {public: void get_value() {cin>>num>>name>>sex;} void display( ) {cout<<"num: "<<num<<endl; cout<<"name: "<<name<<end

c++面向对象程序设计 谭浩强 第一章答案

c++面向对象程序设计 谭浩强 答案 第一章 第1章  C++?的初步知识 1.请根据你的了解,叙述C++?的特点.C++?对C有哪些发展? [解] 略. 2.一个C++的程序是由哪几部分构成的?其中的每一部分起什么作用? [解] 略. 3.从拿到一个任务到得到最终结果,一般要经过几个步骤? [解] 略. 4.请说明编辑.编译.连接的作用.在编译后得到的目标文件为什么不能直接运行? [解] 编译是以源程序文件为单位进行的,而一个完整的程序可能包含若干个程序文件,在分别对它们编译之后,得到若干个目

c++面向对象程序设计 谭浩强 第二章答案

第二章 类体内定义成员函数 #include <iostream> using namespace std; class Time { public: void set_time(); void show_time(); private:                    //成员改为公用的 int hour; int minute; int sec; }; void Time::set_time()          //在main函数之前定义 { cin>>hour; ci

C语言学习笔记---谭浩强

前段时间有机会去面试了一次,真是备受“打击”(其实是启发),总的来说就是让我意识到了学习工具和学习技术的区别.所以最近在看一些数据结构和算法,操作系统,python中的并行编程与异步编程等东西.然而数据结构那些本来是在看python下的,但是python实在包装了太多的东西而大多的经典教材都是基于C语言的(自然是这样,C语言能够操作直接访问物理地址,能够进行位(bit)操作的特点就决定了.)所以就决定重新学一遍C语言,先重温下谭浩强老师的书籍记录下要点: 一:语言: 机器语言:计算机直接识别和接

【c语言】c程序设计--谭浩强--(第三章)--2

// 假如我国国民生产总值的年增长率为9%,计算10年后我国国民生产总值与现在相比增长多少百分比 // p = ( 1 + r )^n r--年增长率 n--年数 p--与现在相比的倍数 #include <stdio.h> #include <math.h> int main() { double r = 0.09; double p; int n = 10; p = pow( ( 1 + r ) , n ); printf("10年后增长了 %f 倍\n",

【c语言】c程序设计--谭浩强--(第四章)--1

// 输入两个实数,按代数值由小到大的顺序输出这两个数 #include <stdio.h> int main() { int a,b; printf("请输入两个数:"); scanf("%d%d",&a,&b); if(a > b) printf("由小到大:%d %d\n",b,a); else printf("由小到大:%d %d\n",a,b); return 0; } // 输入3