【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 <stdio.h>

int main()
{
	int a[10];
	int i;
	int temp;
	printf("请输入10个数:");
	for( i = 0; i < 10; i++ )
	{
		scanf("%d",&a[i]);
	}
	for( i = 0; i < 10; i++ )
	{
		if( a[i] > a[i+1] )
		{
			temp = a[i];
			a[i] = a[i+1];
			a[i+1] = temp;
		}
	}
	printf("其中最大的数是:%d\n",a[9]);
	return 0;
}

技术分享


// 有3个数a,b,c,要求按大小顺序把它们输出

#include <stdio.h>

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

技术分享


// 求 1+2+3+4+...+100

#include <stdio.h>

int main()
{
	int i;
	int sum = 0;
	for( i = 1; i <= 100; i++ )
	{
		sum = sum + i;	
	}
	printf("1+2+3+4+...+100的和是:%d\n",sum);
	return 0;
}

技术分享


// 判断一个数n能否同时被3和5整除

#include <stdio.h>

int main()
{
	int n;
	printf("请输入一个整数:");
	scanf("%d",&n);
	if( n % 3 == 0 && n % 5 == 0 )
		printf("这个数可以同时被3和5整除\n");
	else
	printf("这个数不可以同时被3和5整除\n");
	return 0;
}

技术分享


技术分享


// 将100~200之间的素数输出

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

int main()
{
	int i,j;
	printf("100~200之间的素数如下:\n");
	for(i = 101; i <= 199; i++ )
	{
		for( j = 2; j <= sqrt(i); j++ )
		{
			if( i % j == 0 )
				break;
						
		}
		if( sqrt(i) < j )
		printf("%d\t",i);
	}
	printf("\n");	
	return 0;
}

技术分享


// 求两个数m和n的最大公约数(辗转相除法)

#include <stdio.h>

int yue( int x, int y )
{
	int temp;
	int tem;
	// 保证分母不为0
	if( y == 0 )
	{
		x = temp;
		temp = y;
		y = x;
	}
	// 辗转相除法
	while( tem )
	{
		tem = x % y;
		x = y;
		y = tem;
	}
	return x;
}

int main()
{
	int a,b;
	printf("请输入要求的两个数:");
	scanf("%d%d",&a,&b);
	printf("最大公约数是:%d\n",yue( a,b ));
	return 0;
}

技术分享


// 求方程式 ax^2+bx+c=0 的根,分别考虑:1、有两个不等的实根 2、有两个相等的实根

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

int main()
{
	int d;
	int a,b,c;
	double x,y;
	double f;
	printf("请输入a,b,c:");
	scanf("%d%d%d",&a,&b,&c);
	d = b*b-4*a*c;
	f = sqrt(d);
	if( d > 0)
	{
		x = ( ( -1 ) * b + f ) / ( 2 * a );	
		y =	( ( -1 ) * b - f ) / ( 2 * a ); 
		printf("有两个实根:x = %f  y = %f\n",x,y);
	}
	else if( d == 0 )
	{
		x = ( ( -1 ) * b ) / ( 2 * a );
		printf("此方程只有一个实根:x = y = %f\n",x);
	}
	else
		printf("此方程没有实根\n");

	return 0;
}

技术分享


技术分享


技术分享

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。