1、 给你任意三个整形数据,找出其中最大一个整形数。
#include <stdlib.h>
main()
{
int a = 0;
int b = 0;
int c = 0;
int temp = 0;
printf("请输入数据a:\n");
scanf("%d",&a);
printf("请输入数据b:\n");
scanf("%d", &b);
printf("请输入数据c:\n");
scanf("%d", &c);
if (a > b){
temp = a;
}
else{
temp = b;
}
if (temp > c){
printf("最大值为:%d\n",temp);
}
else{
printf("最大值为:%d\n", c);
}
system("pause");
return 0;
}
2、求1+2!+3!+…+20!的和。
#define _CRT_SECURE_NO_DEPRECATE
#include <stdio.h> <stdlib.h>
long main()
{
long long int product = 1;
//double sum=0;//double只是小数部分精度高,并不一定能存放下
long long int sum = 0;//选用long long int
for (int i = 1; i <= 20;i++){
product = i*product;
sum = sum + product;
}
printf("%d",sum);
system("pause");
return 0;
}
3、编程完成数据加密。数据是五位的整数,加密规则为:
每位数字都加上6,然后用和除以8的余数代替该数字,再将第一位和第五位交换,第二位和第四位交换。
#define _CRT_SECURE_NO_DEPRECATE
#include <stdio.h> <stdlib.h>
int encrypt(int i);
main(){
int i = 0,j=0;
printf("输入一个五位整数");
scanf("%d",&i);
j = encrypt(i);
printf("加密后的数字:%d",j);
system("pause");
return 0;
}
int encrypt(int i){
int a = 0, b = 0, c = 0, d = 0, e = 0;
a = (i % 10 + 6) % 8;
b = (i / 10 % 10 + 6) % 8;
c = (i / 100 % 10 + 6) % 8;
d = (i / 1000 % 10 + 6) % 8;
e = (i / 10000 % 10 + 6) % 8;
int temp = 0;
temp = a;
a = e;
e = temp;
temp = b;
b = d;
d = temp;
return (a+b*10+c*100+d*1000+e*10000);
}