C语言/C++
duoduo_333
.O(∩_∩)O奋斗中的攻城师.
展开
-
C 语言,将两个数组合并到另外一个数组中,并且合并之后的数组是有序的。
int a[10] = {0}; int b[10] = {0}; int c[20] = {0}; printf("a数组为:"); for (int i = 0; i < 10; i++) { a[i] = arc4random()%(40 - 20 + 1) + 1;//为数组生成随机元素 printf("%d ", a[原创 2014-07-21 20:40:20 · 10690 阅读 · 1 评论 -
C语言 找出字符串中的数字,开辟空间储存它们,并输出这些数字
/** * 找出字符串中的数字,开辟空间储存它们,并输出这些数字. */ //找出字符串中的数字,开辟空间储存它们,并输出这些数字. char str[] = "lanou124kk34hanooo888jjj"; // 字符串随便给 int i = 0,count = 0; while (str[i] != '\0') {原创 2014-07-29 17:18:28 · 1371 阅读 · 0 评论 -
输入3个学员的姓名,动态分配内存保存学员姓名,并输出
//输入3个学员的姓名,动态分配内存保存学员姓名,并输出 //1)从控制台输入的字符串如何存储? //解决方案:定义一个字符数组接收输入的字符串 //2)如何动态为学员姓名开辟开空间 //解决法:计算字符串长度 + 1; //3)如何存储为3个学员姓名开辟空间之后的地址 //解决方案:使用指针数组来存储地址,数组中有三个元素. char te原创 2014-07-29 17:20:50 · 1406 阅读 · 0 评论 -
(C语言-结构体)主函数创建5个学生的数组,写一个排序函数,让学生按姓名从小到大排序,主函数输出排序后的结果。
typedef struct student{ char name[20];//存储姓名}Student;void sortArr(Student *p, int count);原创 2014-07-28 21:05:01 · 3948 阅读 · 0 评论 -
(无bug版)有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)。
//2)、有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)。 //如何存储文本? //1.bug1 : 如果最后一个单词后面直接跟\0.无法获取. //2.bug2 : 第一个单词前面出现空格,或者多个空格 //3.bug3 : 单词与单词之间出现多个空格. //1.如何存储文本? char str[] =原创 2014-07-30 08:58:08 · 702 阅读 · 0 评论 -
C语言 回调函数的使用:(实例对比)
题目:定义一个结构体数组,包含学生的姓名,年龄,成绩.分别按姓名,年龄,成绩的从小到大排序输出: 一般做法:原创 2014-07-31 08:13:28 · 800 阅读 · 0 评论 -
动态函数调用实现下列操作,输入2个数以及操作符计算结果。@最大公约数$最小公倍数+和 -差
int maxDivisor(int a, int b);int maxDivisor(int a, int b){ int temp = 0,y = 0; if (b > a) { temp = a; a = b; b =temp; } y = a % b; while (y != 0) {原创 2014-07-31 09:02:39 · 643 阅读 · 0 评论 -
C语言-使用递归函数求正序,逆序,阶乘.
void niXu(int n){ if (n == 0) { return; } //留一个数 int number = n % 10;//保存留下的数 //报数 printf("%d",number); //找下一个人 niXu(n / 10);}//求阶乘,5!int fac(int n){//出口原创 2014-07-31 12:49:42 · 1529 阅读 · 0 评论 -
C语言 贞姐 实现系统自带strcpy函数
void strCpy(char *p1, char *p2){ while (((*(p1++)) = (*(p2++)))) { }}原创 2014-07-29 09:00:54 · 749 阅读 · 0 评论 -
C语言[面试题]输入一个字节内的数(0~255)和移动位数。输出移位结果(要求循环移位)提示:系统自带的移位都是非循环的
unsigned char c = 64; //c为0~255之间的数 unsigned char left = 0; unsigned char right = 0; left = c << 5; right = c >> (8 - 5); printf("以为结果为:%d", left | right);原创 2014-07-25 21:27:38 · 1028 阅读 · 0 评论 -
C语言-进制转换-输入一个字节的整数(0~255),然后将该数的转换为二进制数,然后将奇数位和偶数位互换
unsigned char b = 0b00001000; unsigned char left1 = 0; //存储左移后的结果 unsigned char right1 = 0; //存储右移后的结果 left1 = b << 1; left1 = left1 & 0b10101010; //将奇数位清零 right1 = b >> 1;原创 2014-07-25 20:54:56 · 2058 阅读 · 1 评论 -
输入一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
繁琐的方法:原创 2014-07-19 23:06:58 · 7848 阅读 · 0 评论 -
C语言-冒泡排序-实例
//冒泡排序采用双层for循环 //最外层 -1 可以不减,-1的目的提高程 int b[5] = {15, 18, 30, 27, 7}; for (int i = 0; i < 5 - 1; i++) { //内存循环决定每一趟比较的次数 //内层减1,必须要减,减1目的是为了 //内层减i,可以不减,作用是缩小无 for (int转载 2014-07-19 17:22:37 · 820 阅读 · 0 评论 -
C语言:输入10个人的英文(拼音也行)名字,名字按字母顺序从小到大排列.
char str[10][10] = {0}; char temp[10] = {0};//存储临时字符串 //数组名代表数组的首地址,是一个常量地址,不可修改. printf("输入一个名字:"); for (int i = 0; i < 10; i++) { scanf("%s", str[i]); } for (int原创 2014-07-22 18:40:34 · 21484 阅读 · 0 评论 -
C语言,求数组中第二大值,两种方法.
//第一种方法 int sum = 0; int a[20] = {0}; int max = 0,secMax = 0; printf("20个随机数为: "); for (int i = 0; i < 20; i++) { a[i] = arc4random() %(50 - 10 + 1) + 10;//元素取值区间[10 - 50]原创 2014-07-21 21:47:54 · 9133 阅读 · 0 评论 -
C语言编程在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,用空格来分隔单词。
//初学者,有什么问题请多多指教原创 2014-07-19 17:10:36 · 3807 阅读 · 0 评论 -
C语言,函数的声明,定义,以及调用(实现).举例应用.学了这么长时间,初步明白,汗颜啊
1)写一个函数,实现给数组中的元素随机赋值。(2)写一个函数,实现给数组排序,升序序列。(3)写一个函数,实现将数组元素输出。原创 2014-07-23 20:56:52 · 1138 阅读 · 0 评论 -
C语言,判断一个5位数是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
int a = 0; printf("输入一个五位数:"); scanf("%d", &a); int x = 0, y = 0,m = 0,n = 0; x = a / 10000;//万位 y = a % 10000 / 1000;//千位 m = a % 10000 % 1000 % 100 / 10;//十位 n = a % 1000原创 2014-07-19 15:04:23 · 8200 阅读 · 0 评论 -
C语言,进制转换(输入一个字节内的数(0~255),然后将该数的转换为二进制数,然后将高四位和低四位互换)
unsigned char a = 8; unsigned char left = 0; //存储左移后的结果 unsigned char right = 0; //存储右移后的结果 left = a << 4;//左移四位 right = a >> 4;//右移四位 printf("高四位和低四位互换为:%d\n", left | right);原创 2014-07-25 20:54:38 · 4914 阅读 · 0 评论