|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
一共两个代码 三个问题
- #define _CRT_SECURE_NO_WARNINGS
- #include "stdio.h"
- #include "stdlib.h"
- #include "string.h"
- typedef struct Teacher
- {
- int age;
- int id;
- char name[20];
- }TEAC;
- TEAC* createTeacher(int num)
- {
- TEAC* tmp = (TEAC*)malloc(sizeof(TEAC) * num);
- if (tmp == NULL)
- {
- return NULL;
- }
- return tmp;
- }
- void main()
- {
- int num = 3;
- TEAC* pArr = NULL; //问题1 :这里为啥要定义一个一级指针变量?用元素传递不行吗?
- pArr = createTeacher(num);
- system("pause");
- }
复制代码
- #define _CRT_SECURE_NO_WARNINGS
- #include "stdio.h"
- #include "stdlib.h"
- #include "string.h"
- //pArr指向buf[10]
- void printArr(char(*pArr)[10], int num)//问题2 char(*pArr)[4] = buf,这句形参怎么理解 pArr指向buf[10]?
- { 问题3 char(*pArr)[5] 为啥[]中的数字 要和后面定义的数组长度相同,他们之间有什么联系吗?
- int i;
- for ( i = 0; i < 4; i++)
- {
- printf("%s\n", pArr[i]);
- }
- printf("\n");
- }
- void sortArr(char(*pArr)[10], int num)
- {
- int i;
- int j;
- char tmp[20];
- for (i = 0; i < num; i++)
- {
- for (j = i + 1; j < num; j++);
- {
- if (strcmp(pArr[i], pArr[j]) < 0)
- {
- strcpy(tmp, pArr[i]);
- strcpy(pArr[i], pArr[j]);
- strcpy(pArr[j], tmp);
- }
- }
- }
- }
- void main()
- {
- int num = 4;
- char buf[4][10] = { "aaaaa","ccccc","bbbbb","11111" };
- printf("排序之前\n");
- printArr(buf, num);
- sortArr(buf, num);
- printf("排序之后\n");
- printArr(buf, num);
- system("pause");
- }
复制代码
|
|