主函数部分:
#import <Foundation/Foundation.h>
#import "MYFunction.h"
int main(int argc, const char * argv[]) {
1. (**)编写一个函数,交换 2 个浮点数。
float num1 = 3.5;
float num2 = 5.6;
exchanges(&num1, &num2);
2. (***)在主函数中输入6个字符串(二维数组),对他们按从小到大的 顺序,然后输出这 6 个已经排好序的字符串。要求使用指针数组进行处理。
char *array[6] = {"iPhone", "danTou", "kuaiPao", "xiaoQiang", "laoMeng", "xiaoMeng"};
arrSort(array, 6);
3. (****)面试题: 有一字符串中包含数字与字符,请编程去除数字
char array[] = "aabc123cba3";
deleteNumbers(array);
printf("去除数字后的字符串为:%s\n",array);
return 0;
}
#import <Foundation/Foundation.h>
第一题
void exchanges(float *p1, float *p2);
第二题
void arrSort(char *array[], int count);
第三题
void deleteNumbers(char *s);
函数部分:
#import "MYFunction.h"
第一题
void exchanges(float *p1, float *p2)
{
float temp = *p1;
*p1 = *p2;
*p2 = temp;
printf("%.1f %.1f\n", *p1, *p2);
}
第二题
void arrSort(char *array[], int count)
{
for(int i = 0; i < count - 1; i++)
{
for(int j = 0; j < count - i - 1; j++)
{
if(strcmp(array[j], array[j + 1]) > 0)
{
char *temp = NULL;
temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
for (int i = 0; i < count; i++) {
printf("%s\n", array[i]);
}
}
第三题\
void deleteNumbers(char *s)
{
char *p = s;
while(*p){
if((*p >= '0') && (*p <= '9')){
p++;
}
else{
*s = *p;
s++;
p++;
}
if(*p != *s){
*s = '\0';
}
}
}