1.给定两个整型变量的值,将两个值的内容进行交换。 (设置中间变量)
#include<stdio.h>
int main() {
int a=0,b=0,c=0;
printf("请输入两个整型变量a和b\n");
scanf("%d%d",&a,&b);
c=a;
a=b;
b=c;
printf("%2d%2d\n",a,b);
return 0;
}
2.不允许创建临时变量,交换两个数的内容
#include<stdio.h>
int main(){
int a=0,b=0;
printf("请输入两个整型变量a和b\n");
scanf("%d%d",&a,&b);//异或:相同为0,不同为1
a=a^b;
b=a^b;
a=a^b;
printf("%2d%2d",a,b);
return 0;
}
3.求10 个整数中最大值。
#include<stdio.h>
int main() {
int a[10];
int i=0;
printf("请输入10个整数\n");
for (i=0;i<10;i++)
scanf("%d",&a[i]);
for (i=0;i<9;i++){
if (a[i]>a[i+1]){
a[i+1]=a[i];
}
}
printf("这10个整数中最大值为%d\n",a[i]);
return 0;
}
4.将三个数按从大到小输出。
#include<stdio.h>
int main(){
int a[3]={0};
int i=0,j=0,t=0;
printf("请输入三个数\n");
for (i=0;i<3;i++){
scanf("%d",&a[i]);
}
printf("这三个数从小到大的顺序为:");
for (i=1;i<=3;i++){
for (j=0;j<3-i;j++){
if (a[j]>a[j+1]){
t=a[j];
a[j]=a[j+1];
a[j+1]=t; }
}
}
for (i=0;i<3;i++){
printf("%3d",a[i]);
}
return 0;
}5.求两个数的最大公约数。
#include<stdio.h>
int main(){
int a=0,b=0,c=0;
printf("请输入两个数:");
scanf("%d%d",&a,&b);
c=a%b;
for (;c!=0;){
c=a%b;
a=b;
b=c; }
printf("这两个数的最大公约数为%d\n",a);
return 0;
}`