week3 C语言练习
1、 给你任意三个整形数据,找出其中最大一个整形数。
#include<stdio.h>
int max(int a,int b) //构建一个比较大小的函数
{
return a>b?a:b;
}
void main()
{
int a,b,c,d;
printf("请输入输入三个整型数据:");
scanf("%d%d%d",&a,&b,&c);
printf("%d\n",max(max(a,b),c));
}
2、 求1+2!+3!+...+20!的和。
#include<stdio.h>
void main(){
int sum=0;
int n=1;
for(int i=1;i<=20;i++){
n=i*n;
sum+=n;
}
printf("%d\n",sum);
}
3、 编程完成数据加密。数据是五位的整数,加密规则为:
每位数字都加上6,然后用和除以8的余数代替该数字,
再将第一位和第五位交换,第二位和第四位交换。
#include <stdio.h>
void main(void){
int i,j,temp1,temp2;
int arr[5];
int number=97118;
j=10000;
printf("原始数据: \n%d\n",number);
for(i=0; i<5; i++){
arr[i]=number/j;
number-=(j*arr[i]);
j/=10;
arr[i]=(arr[i]+6)%8;
}
printf("每位数字加上6,然后用和除以8的余数代替该数字:\n");
for(i=0; i<5; i++){
printf("%d",arr[i]);
}
printf("\n");
temp1=arr[0];
temp2=arr[1];
arr[0]=arr[4];
arr[1]=arr[3];
arr[4]=temp1;
arr[3]=temp2;
printf("将第一位和第五位交换,第二位和第四位交换:\n");
for(i=0; i<5; i++){
printf("%d",arr[i]);
}
printf("\n");
}