main.m中
#import <Foundation/Foundation.h>
#import "aboutClass.h"
//引入头文件的过程相当于把头文件的内容拷贝到当前文件夹中
//return关键字的作用:在没有返回值得函数里面,return用于把函数的结果返回给主调函数,在没有返回值得函数里面,return用于提前结束函数,return之后的语句就不用执行了
//函数之间都是平级的,不允许在函数里面嵌套函数。
//实参传递给形参是一个值拷贝的过程
//局部变量的作用,只在离它最近的大括号有用,出了括号就没有人认识
//全局变量:从定义的位置开始,往下都可以使用
//1.无返回值无参
int main(int argc, const char * argv[]) {
printHello();
fool();
squreOfCircle(3);
printNumber(7);//7为实参
printFromNumberToNumber(10 , 20);
int result =studentNumber();
printf("number = %d\n",result);
maxValue(34,28);
sumOfValue(sumOfValue(sumOfValue(3)));
middleValue(3,5,8);
printf("中间值为:%d\n",middleValue(3,5,8));
lenghtOfWord();
dayOfYear(2012,3,25);
exchange(3,6);
sum(3);
operate(2,'+',45);
int array[] = {1,2,3,4,5,6};
printArray(array,6);
int a[5] = {};
randomArray(a, 5);
int array1[] = {};
outOfArray(array1, 20);
int array2[] = {};
sortByBubble(array2,5);
int array3[] = {};
serachArray(array3, 5);
char str[] = "nadfn fjaf fafnj fafn da er!";
spaceCount(str);
return 0;
}
#import <Foundation/Foundation.h>
void printHello();
void fool();
int studentNumber();
int boyCount();
int girlCount();
void printNumber(int n);
void printFromNumberToNumber(int m , int n);
float squreOfCircle(int r);
int maxValue(int value1,int value2);
int sumOfValue(int n);
int middleValue(int a,int b,int c);
int lenghtOfWord();
int dayOfYear(int year,int month,int days);
void exchange(int x,int y);
//int sumOfSquare();
int squre(int n);
int sum();
float operate(float a,char oper ,float b);
void printArray(int array[] , int n);
void randomArray(int array[] , int n);
void outOfArray(int array[] , int n);
void sortByBubble(int array[],int n);
void serachArray(int array[],int n);
int spaceCount(char str[]);
aboutClass.m中#import "aboutClass.h"
void printHello()
{
printf("HELLOWORLD!\n");
}
void fool(){
printf("李昕龙 is a stupid fellow!\n");
}
//2.有参数无返回值
void printNumber(int n)//n为形参
{
for (int i = 1; i <= n; i++) {
printf("n = %d\n",i);
}
}
//3.无参数,有返回值
int studentNumber()
{
return boyCount() + girlCount();
}
int boyCount()
{
return 31;
}
int girlCount()
{
return 6;
}
void printFromNumberToNumber(int m , int n)
{
for (int i = m; i <= n; i++) {
printf("n = %d\n",i);
}
}
//有返回值有参
//commond+shift+k 清楚项目缓存
float squreOfCircle(int r){//r形参
float squre = 3.14*r*r;
printf("圆的面积为:%f\n",squre);
return squre;
}
int maxValue(int value1,int value2)
{
int max = value1 > value2 ? value1 : value2;
printf("max = %d\n",max);
return max;
}
int sumOfValue(int n)
{
int sum = 0;
for (int i = 1 ; i <= n; i++) {
sum += i;
}
printf("1~%d的和为:%d\n",n,sum);
return sum;
}
//求三个数的中间值
int middleValue(int a,int b,int c)
{
int max = (a > b ? a : b) > c ? (a > b ? a : b) : c;
int min = (a < b ? a : b) < c ? (a < b ? a : b) : c;
int mid = a + b + c - min - max;
return mid;
}
//随机生成一个数,求这个数字的长度
int lenghtOfWord()
{
int n = arc4random() % 10001 + 23;
printf("这个数字为:%d\n",n);
int count = 0;
do{
count ++;
n = n / 10;
}while (n != 0);
printf("长度为:%d\n",count);
return count;
}
int dayOfYear(int year,int month,int days){
int day = 0;
switch (month) {
case 12:
day += 30;
case 11:
day += 31;
case 10:
day += 30;
case 9:
day += 31;
case 8:
day += 31;
case 7:
day += 30;
case 6:
day += 31;
case 5:
day += 30;
case 4:
day += 31;
case 3:
if (year%400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
day += 29;
}else{
day += 28;
}
case 2:
day += 31;
case 1:
day += days;
default:
break;
}
printf("%d-%d-%d是这一年的第%d天\n",year,month,days,day);
return day;
}
void exchange(int x,int y){
printf("原来的x=%d,原来的y=%d\n",x,y);
int temp = x;
x = y;
y = temp;
printf("x=%d,y=%d\n",x,y);
}
//int sumOfSquare(int n){
// int sum = 0;
// for (int i = 1; i <= n; i++) {
// sum += n*n;
// if (i == n) {
// printf("%d^2 = ",i);
// }else{
// printf("%d^2+",i);
// }
// }
// printf("%d",sum);
// return sum;
//}
int squre(int n){
return n*n;
}
int sum(int n){
int sum = 0;
for (int i = 1; i <= n; i++) {
sum += squre(i);
if (i == n) {
printf("%d^2 = ",i);
}else{
printf("%d^2+",i);
}
}
printf("%d\n",sum);
return sum;
}
float operate(float a,char oper ,float b){
float c = 0;
switch (oper) {
case '+':
c = a + b;
break;
case '-':
c = a - b;
break;
case '*':
c = a * b;
break;
case '/':
c = a / b;
if (b == 0) {
printf("error!\n");
return 0;
}
break;
default:
break;
}
printf("%f%c%f = %f\n",a,oper,b,c);
return c;
}
void printArray(int array[] , int n)
{
for (int i = 0; i < n; i ++) {
printf("array[%d] = %d\n",i,array[i]);
}
}
//无返回值有参数 给一个数组的每个元素赋值
void randomArray(int array[] , int n)
{
for (int i = 0; i < n; i ++) {
array[i] = arc4random() % 101;
printf("array[%d] = %d\n", i , array[i]);
}
}
void outOfArray(int array[] , int n){
for (int i = 0; i < n; i ++) {
array[i] = arc4random() % 23;
if (array[i] > 18) {
array[i] = 0;
}
printf("array[%d] = %d\n", i , array[i]);
}
}
void sortByBubble(int array[],int n){
for (int i = 0; i < n; i ++) {
array[i] = arc4random() % 23;
if (array[i] > 18) {
array[i] = 0;
}
printf("array[%d] = %d\n", i , array[i]);
}
for (int i = 0; i < n-1; i++) {
for (int j = 0; j < n - 1 - i; j++) {
if (array[j] > array[j + 1]) {
int temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
for (int i= 0; i < n; i++) {
printf("%d ",array[i]);
}
}
void serachArray(int array[],int n){
for (int i = 0; i < n; i ++) {
array[i] = arc4random() % 23;
if (array[i] > 18) {
array[i] = 0;
}
printf("array[%d] = %d\n", i , array[i]);
}
for (int i = 0; i < n-1; i++) {
int min = i;
for (int j = i+1; j < n ; j++) {
if (array[min] > array[j]) {
min = j;
}
}
if (min != i) {
int temp = array[min];
array[min] = array[i];
array[i] = temp;
}
}
for (int i= 0; i < n; i++) {
printf("%d ",array[i]);
}
}