1.交换两个数字
#include<stdio.h> #include<stdlib.h> int my_swap(int *a,int *b) { int flog; flog=*b; *b=*a; *a=flog; return(*a,*b); } int main() { int num1=0; int num2=0; printf("请输入要交换的数字\n"); scanf("%d %d",&num1,&num2); my_swap(&num1,&num2); printf("交换后的结果为:\n"); printf("%d,%d\n",num1,num2); system("pause"); return 0; }
2.交换两个数,不出现临时变量
#include<stdio.h> #include<stdlib.h> int my_swap(int *a,int *b) { *a=*b+*a; *b=*a-*b; *a=*a-*b; return(*a,*b); } int main() { int num1=0; int num2=0; printf("请输入要交换的数字\n"); scanf("%d %d",&num1,&num2); my_swap(&num1,&num2); printf("交换后的结果为:\n"); printf("%d,%d\n",num1,num2); system("pause"); return 0; }
3.输出10个数中的最大值
#include<stdio.h> #include<stdlib.h> #define A 10 int main() { int i,j,max; int a[A]; printf("请输入求最大值的十个数\n"); for(i=0;i<A;i++) scanf("%d",&a[i]); max=a[0]; for(j=0;j<10;j++) { if(a[j]>max) max=a[j]; } printf("最大值为: %d \n",max); system("pause"); return 0; }
4.写出一个函数返回参数二进制中1的个数
#include<stdio.h> #include<stdlib.h> int count_one_bits(unsigned int value) { int i,j=0; for(i=0;i<256;i++) { if(value % 2 == 1) { j++; } value=value/2; } return j; } int main() { int num,one; printf("请输入一个要进行运算的十进制整数\n"); scanf("%d",&num); one=count_one_bits(num); printf("计算结果为:%d",one); system("pause"); return 0; }