(1)给定两个整型变量的值,将两个值的内容交换
下边是不给创建临时变量的第一种做法
#include<stdio.h>
#include<stdlib.h>
int main()
{
//给定两个整型变量的值,将两个值的内容交换
int a=6;
int b=7;//创建两个整型变量
a=a+b;
b=a-b;//将原a的值付给b;
a=a-b;//将原b的值付给a;
printf("a=%d\n",a);
printf("b=%d\n",b);
system("pause");
}
求10个整数的最大值
**思路:**首先申请一个整形数组放这十个整数,再定义一个最大值变量max,初始值为数组的首位,一个控制循环变量,遍历数组如果找出比max大则将这个值赋予max。
//求10个整数的最大值
int a[10]={0,1,2,3,9,5,6,7,8,4};
int max=a[0];
for(int i=0;i<9;i++)
{
if(a[i+1]>max)
max=a[i+1];
}
printf("十个整数的最大值为%d\n",max);
system("pause");
将三个数从大到小排列
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
void change (int* a,int* b)
{
int tem;
tem=*a;
*a=*b;
*b=tem;
}
int main()
{
//将三个数从大到小输出
int number1,number2,number3; //定义三个数
printf("请输入三个数\n");
scanf("%d,%d,%d",&number1,&number2,&number3);
if(number1<number2) //保证number1>number2
change(&number1,&number2);
if(number1<number3) //保证number1>number3
change(&number1,&number3);
if(number2<number3) //使得number2>number3
change(&number2,&number3);
printf("三个数的从大到小顺序为\n");
printf("%d %d %d",number1,number2,number3);
system("pause");
}
求两个数的最大公约数
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int main()
{
//求两个数的最大公约数
int number1,number2=0;
int factor=1;//两个数的最小公因数是1;
int num=0;//找最大公因数循环次数
printf("请输入连个数\n");
scanf("%d,%d",&number1,&number2);
if(number1>number2) //找出两个数中小的数 也大概就是循环的次数
num=number2;
else
num=number1;
for(int i=2;i<=num;i++) //从2一直循环到较小的数
{
if(number1%i==0&&number2%i==0)
factor=i;
}
printf("两个数的最大公因数为:%d\n",factor);
system("pause");
}