- 博客(18)
- 收藏
- 关注
原创 函数指针按姓名,年龄,成绩对学生排序
//定义一个学生结构体数组typedef struct student { char name[20];//存储姓名 int age;//存储年龄 float score;//存储成绩}Student;//结构体类型重定义//按年龄排序, 只有判断条件不同,可以把他们单独提出来,因为判断条件的结果只有两个,非0即1,因此可以用bool类型的返回值来代替BOOL
2014-07-31 09:37:25 1516
原创 动态函数调用实现下列操作,输入2个数以及操作符计算结果@ 求最大公约数 $求最小公倍数 - 求差 + 求和 等等
//求最大公约数int greatestDivisorOfTwo(int x, int y){ int min = x < y ? x : y; int i = 0; for (int i = min; i > 0; i--) { if (x % i == 0 && y % i == 0) { break; }
2014-07-31 09:21:03 909
原创 按输入的排序方式实现对5个学生进行排序
函数声明,函数实现#import typedef struct student { char name[20];//存储姓名 int age;//存储年龄 float score;//存储成绩}Student;//按年龄排序BOOL sortStudentByAge(Student stu1, Student stu2){ return stu1.age
2014-07-30 19:20:38 1023
原创 输入一个数组长度,动态创建数组,所有元素随机生成,输出元素中的最大值
int n = 0;//存储长度 int max = 0;//存储最大值 //输入一个数组长度 printf("请输入一个数组长度:"); scanf("%d", &n); //动态创建数组 int *p = malloc(n * 4);//分配字节数 printf("随机产生的数组为:"); for (int i = 0;
2014-07-30 09:37:27 1680
原创 有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)
//1.bug1 : 如果最后一个单词后面直接跟\0.无法获取. //2.bug2 :第一个单词前面出现空格,或者多个空格 //3.bug3 : 单词与单词之间出现多个空格. //1.如何存储文本? char str[] =" a41 a1421 b3511 b b c c c c
2014-07-30 09:33:58 476
原创 有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)
char str[] = "vkal fjut bkil vcujt lojio cthrh"; char *pStr[6] = {0};//这里的数组个数可以指定地大一些 int i =0, k = 0;//i记录字符个数,k记录指针数组的组数 int length = 0;//length记录单词的长度 while (str[i]
2014-07-29 22:58:19 570
原创 有一字符串,包含数字与字母,编程去除数字。要求:1要求在原字符串中操作 2、使用指针处理
char str[] ="ahi27io8"; char *p = str; int i = 0; char temp[255] = {0}; while (*(p + i) != '\0') {//以结束标志为判断依据 if (*(p + i) >= '\0' && *(p + i)<='9' ) {
2014-07-29 09:05:42 1452
原创 在主函数中输入10个等长的字符串。用另一个函数对它们排序,然后主函数输出10个已经排好的字符串。
//排序void sortChar(char *b[],int count) { for (int i =0; i 1; i ++) { for (int j =0; j 1 - i; j ++) { //而对于数组b来说,数组中的每一个元素都是一个字符型的指针变量,指针变量用来存储地址,指针数组用来存放多个地址
2014-07-29 08:58:35 3608
原创 主函数创建5个学生的数组,写一个排序函数,让学生按姓名从小到大排序,主函数输出排序后的结果。
//排序函数void sortOfStruct(Student *pStu, int count){ for (int i = 0; i < count - 1; i ++) { for (int j = 0; j < count - 1 - i; j ++) { if (strcmp((pStu + j)->name, (pStu + j + 1
2014-07-28 21:38:52 1884
原创 //2、在主函数中输入10个等长的字符串。用另一个函数对它们排序,然后主函数输出10个已经排好的字符串。
//输入10个字符串void pleaseScanfChar(char *b[],int count) { printf("请输入10个等长的字符串"); printf("\n"); for (int i =0; i printf("请输入第%d个字符串", i + 1 ); scanf("%s", b
2014-07-28 08:28:52 2944
原创 //1、输入10个整数,将其中最小的数与第一个数对换,把最大的数和最后一个数对换,写三个函数:1.输入10个数,2.进行处理.3输出10个数
void pleaseScanf(int a[],int count) { int *p =NULL; p = a; printf("请输入小于100的数10个\n"); for (int i =0; i printf("请输入第%d个数:\n", i + 1); scanf("%d", p +
2014-07-28 08:25:56 4070
原创 判断是否为闰年,并且计算生日是第几天
int days(date dat){ int a[12] = {0,31,59,90,120,151,181,212,243,273,304,334}; int day = 0; BOOL isTrue ; // 用于判断该年是否为闰年 // 判断该年是否为闰年 if (dat.year % 400 == 0 || (dat.year % 4
2014-07-26 09:56:47 1324
原创 进制转换,指针前奏,奇偶互换,左移,右移
//二进制数的高四位和低四位互换 unsigned char a = 130; unsigned char left =0;//存储左移之后的结果 unsigned char right =0;//存储右移之后的结果 left = a <<4; right = a >>4; printf("%d", left
2014-07-25 21:22:53 641
原创 找出一个二维数组的鞍点,即该位置上的元素在该行中最大,在该列中最小(也可能没鞍点),打印出有关信息。
int a[3][4] = {0}, maxRow =0, column = 0 , mincolumn =6; for (int i =0; i 3; i ++) { for (int j =0; j 4; j ++) { a[i][j] = arc4random() % 6 ;
2014-07-23 08:41:55 3259
原创 输入6个字符串,并对它们按从大到小的顺序排序后输出。
char str[6][10] = {0}; char tempStr[10] = {0}; printf("请输入六个字符串:" ); for (int i =0; i <6; i ++) { scanf("%s", str[i]); } for (int i =0; i 5; i ++) {
2014-07-23 08:41:34 4983
原创 耶稣有13个门徒,其中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个开始报号:1,2,3,1,2,3...。凡是报到“3”就退出圈子,最后留在圈子内的人就是出卖耶稣的叛徒。
//待解决的问题: // (1),如何考试13个人?通过数组表示,有13个元素,赋初值,可以赋初值为[1, 13] // (2),如何描述报数 ? 使用count值 //(3)如何将人剔除,标识已经死掉的人?将元素的值置为0 //(4), 如何及时获取当前活着的人 ?变量number用来记录当前活着的人 // (5), 如
2014-07-21 21:41:42 1990
原创 对一个已知的字符串查找最长单词,并且输出来
// 第一种方法 //如何求出字符串中的单词的长度// char str[] = "lanou is a big company";// int maxlength = 0; //存储最长单词长度// int length = 0;//用来记录单词的长度// int maxIndex = 0;// // 使用
2014-07-21 21:41:41 1350
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人