一、不理解知识点:
二、作业
定义以下函数:
1. 求得两个整型数中较大的那一个
1 #include<stdio.h> 2 3 int max(int x,int y); 4 int main(void) 5 { 6 int x,y; 7 printf("请输入两个整型数x/y:"); 8 scanf("%d/%d",&x,&y); 9 printf("较大的数值是%d ",max(x,y)); 10 } 11 12 //求两个整形数中较大的哪一个 13 int max(int x,int y) 14 { 15 return (x > y ? x : y) ; 16 }
2. 返回给定正整数的倒序数。如给定的是1234,返回4321
1 #include<stdio.h> 2 #define TEN 10 3 4 int reverse(int n); 5 int main(void) 6 { 7 int num,reverse_num; 8 printf("请输入一个正整数:"); 9 scanf("%d",&num); 10 11 reverse_num = reverse(num); 12 printf("%d de 倒序数是%d ",num,reverse_num );
return 0; 13 } 14 15 //求一个正整数的倒序数 16 int reverse(int n) 17 { 18 int res=0,num; 19 num = n; 20 while(num) 21 { 22 res= num % TEN + res * TEN; 23 num /= TEN; 24 } 25 return res; 26 }
3. 用递归求得一个整型数的阶乘
#include<stdio.h> int factorial(int n); int main(void) { int n,res; printf("请输入一个整形数:"); scanf("%d",&n); res = factorial(n); printf("%d ! = %d ",n,res); return 0; } //用递归求得一个整型数的阶乘 int factorial(int n) { if(n<0) return -1; if(n == 0 || n ==1 ) return 1; return n * factorial(n-1); }
4. 判断一个整数是否在某两个整数之间
#include<stdio.h> int is_inside(int i,int st,int ed); int main(void) { int num,start,end; printf("请输入范围的两个整数:"); scanf("%d%d",&start,&end); printf("请输入要判断的数:"); scanf("%d",&num); if (is_inside(num,start,end)) printf("%d在%d之间%d ",num,start,end); else printf("%d不在%d之间%d ",num,start,end); return 0; } //判断一个整数是否在某两个整数之间 int is_inside(int i,int st,int ed) { return i >= st && i < ed; }