#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
int n = 9;
float *pFloat = (float *)&n;
printf("n的值为:%d\n", n);
printf("*pFloat的值为:%f\n", *pFloat);
*pFloat = 9.0;
printf("num的值为:%d\n", n);
printf("*pFloat的值为:%f\n", *pFloat);
return 0;
}
/*
int Mychar(int value)
{
}
void main()
{
int value = 128;
int res = Mychar(value);
printf("%d", res);
}
*/
/*
int main()
{
int i = 0;
int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
for (i = 0; i <= 12; i++)//此处范围i是0~12,十三个
{
arr[i] = 0;//i大于9时数组就会越界,占用后面空间的内存来存放,此时因为越界,程序应该报错
printf("hello bit\n");//结果为死循环打印
//i arr作为局部变量,而局部变量在栈空间开辟空间,栈区使用原则为:先高地址 后低地址
//数组 随着下标增大,地址也随之增大
//当arr越界开始占用空间时,因为VS环境下,i和arr在栈区刚好相隔2个空间位置
//提供给arr[10],和[11],之后为i的空间内存位置
//当arr[12]=0时,i同样为0 循环再次进行【不同开发环境,栈区差距不同】
}
return 0;
}
*/
////strlen实现
////模拟实现库函数strlen
//void Swap(int *a, int *b)
//{
// int tmp = *a;
// *b = *a;
// *a = tmp;
//}
//void SwapArry(int ar[], int n)
//{
// int start = 0;
// int end = n - 1;
// while (start < end)
// {
// int ar;
// while (start < end&&ar[start] % 2 == 1)
// start++;
// while (end>start&&ar[end]%2==0)
// end--;
// Swap(start,end);
// }
//}
//void main()
//{
// int ar[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
// int n = sizeof(ar) / sizeof(ar[0]);
// SwapArray(ar, n);
// for (int i = 0; i < n; i++)
// {
// printf("%d ", ar[i]);
// }
//}
/*
//喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水,给20元,可以多少汽水(编程实现)。
int Num(int num)
{
int flag = num;
while (flag > 1)
{
num = num + flag / 2;
flag = flag / 2 + flag % 2;
}
return num;
}
int main()
{
int ret = Num(20);
printf("%d\n", ret);
return 0;
}
*/
/*
//冒泡排序
//实现一个对整形数组的冒泡排序
void print_arr(int arr[],int sz)
{
int i = 0;
for (i = 0; i < sz; i++)
{
printf("%d",arr[i]);
}
printf("\n");
}
void Bubble(int arr[],int sz)
{
int i = 0;
for (i = 0; i < sz - 1;i++)
{
int j = 0;
for (j = 0; j < sz - 1 - i; j++)
{
if (arr[j] > arr[j + 1])
{
int tmp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
}
}
}
}
int main()
{
int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
int sz = sizeof(arr) / sizeof(arr[0]);
print_arr(arr, sz);
Bubble(arr, sz);
print_arr(arr, sz);
}
*/
/*
//数组操作
//创建一个整形数组,完成对数组的操作
//实现函数init() 初始化数组为全0
//实现print() 打印数组的每个元素
//实现reverse() 函数完成数组元素的逆置。
//要求:自己设计以上函数的参数,返回值
int init(int arr[],int j)
{
int i = 0;
for (i = 0; i < j; i++)
{
arr[i] = 0;
}
}
void reverse(int arr[],int j)
{
int tmp;
int left = 0;
int right = j - 1;
while (left < right)
{
tmp = arr[left];
arr[left] = arr[right];
arr[right] = tmp;
left++;
right--;
}
}
void print_arr(int arr[],int j)
{
int i = 0;
for (i = 0; i < j; i++)
printf("%d\t", arr[i]);
printf("\n");
}
int main()
{
int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int j = sizeof(arr) / sizeof(arr[0]);
print_arr(arr, j);
reverse(arr, j);
print_arr(arr, j);
}
*/
/*
//交换数组
//将数组A中的内容和数组B中的内容进行交换。(数组一样大)
void print(int a[], int j)
{
int i = 0;
for (i = 0; i < 3; i++)
{
printf("%d", a[i]);
}
printf("\n");
}
int main()
{
int i=0;
int j = 3;
int a[3] = { 1, 2, 3 };
print(a, j);
int b[3] = { 4, 5, 6 };
print(b, j);
printf("\n");
for (i = 0; i < 3; i++)
{
a[i] = a[i] ^ b[i];
b[i] = a[i] ^ b[i];
a[i] = a[i] ^ b[i];
}
print(a, j);
print(b, j);
printf("\n");
return 0;
}
*/
//函数判断素数
//实现一个函数,判断一个数是不是素数。
//利用上面实现的函数打印100到200之间的素数。
/*
//函数判断闰年
//实现函数判断year是不是润年。
void leapyear(int year)
{
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))
printf("%d是闰年", year);
else
printf("%d不是闰年", year);
}
int main()
{
int year;
printf("请输入年份:\t");
scanf("%d", &year);
leapyear(year);
printf("\n");
return;
}
*/
//交换两个整数
//实现一个函数来交换两个整数的内容。
//乘法口诀表
//实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定
//如:输入9,输出9 * 9口诀表,输出12,输出12 * 12的乘法口诀表。
//打印一个数的每一位
//递归方式实现打印一个整数的每一位
//求阶乘
//递归和非递归分别实现求n的阶乘(不考虑溢出的问题)
//strlen的模拟(递归实现)
//递归和非递归分别实现strlen
//字符串逆序(递归实现)
//编写一个函数 reverse_string(char * string)(递归实现)
//实现:将参数字符串中的字符反向排列,不是逆序打印。
//要求:不能使用C函数库中的字符串操作函数
//比如 :
//char arr[] = "abcdef";
//逆序之后数组的内容变成:fedcba
//计算一个数的每位之和(递归实现)
//写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和
//例如,调用DigitSum(1729),则应该返回1 + 7 + 2 + 9,它的和是19
//输入:1729,输出:19
//递归实现n的k次方
//编写一个函数实现n的k次方,使用递归实现。
//计算斐波那契数
//递归和非递归分别实现求第n个斐波那契数
//例如:
//输入:5 输出:5
//输入:10, 输出:55
//输入:2, 输出:1
//求两个数二进制中不同位的个数
//编程实现:两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
//输入例子 :
//1999 2299
//输出例子 : 7
/*
int main()
{
int m = 0;
int n = 0;
int i = 0;
int count = 0;
printf("请输入两个数字:\n");
scanf("%d%d", &m, &n);
for (i = 0; i<32; i++)
{
if (((m >> i) & 1) != ((n >> i) & 1))
{
count++;
}
}
printf("count=%d", count);
return 0;
}
*/
//打印整数二进制的奇数位和偶数位
//获取一个整数二进制序列中所有的偶数位和奇数位,分别打印出二进制序列
/*
void main()
{
int m = 0;
scanf("%d", &m);
int i = 0;
printf("偶数位为: ");
for (i = 31; i >= 1; i -= 2)
{
printf("%d ", (m >> i) & 1);
}
printf("\n");
printf("奇数位为: ");
for (i = 30; i >= 0; i -= 2)
{
printf("%d ", (m >> i) & 1);
}
return 0;
}
*/
//统计二进制中1的个数
//写一个函数返回参数二进制中 1 的个数。
//比如: 15 0000 1111 4 个 1
/*
int Count_one(unsigned int value)
{
int count = 0;
while (value)
{
value &= (value-1);
count++;
}
return count;
}
void main()
{
unsigned int value = 15;
int count = Count_one(value);
printf("count_one=%d\n", count);
}
*/
//交换两个变量(不创建临时变量)
//不允许创建临时变量,交换两个整数的内容
/*
int main()
{
int a = 5;
int b = 3;
printf("交换前:a=%d b=%d\n", a, b);
a = a^b;
b = a^b;
a = a^b;
printf("交换后:a=%d b=%d\n", a, b);
return 0;
}
*/
没有合适的资源?快使用搜索试试~ 我知道了~
学习C语言中学习的一些内容.zip
共60个文件
c:11个
vcxproj:9个
sln:9个
5星 · 超过95%的资源 需积分: 22 2 下载量 178 浏览量
2022-10-18
09:56:59
上传
评论 2
收藏 655KB ZIP 举报
温馨提示
学习C语言中学习的一些内容.zip学习C语言中学习的一些内容.zip学习C语言中学习的一些内容.zip学习C语言中学习的一些内容.zip学习C语言中学习的一些内容.zip学习C语言中学习的一些内容.zip学习C语言中学习的一些内容.zip
资源详情
资源评论
资源推荐
收起资源包目录
学习C语言中学习的一些内容.zip (60个子文件)
c-language-master
2021.10.10
2021.10.10.v12.suo 19KB
2021.10.10
2021.10.10.vcxproj.filters 923B
text1.c 288B
Debug
2021.10.10.tlog
CL.write.1.tlog 516B
CL.read.1.tlog 3KB
cl.command.1.tlog 1KB
link.write.1.tlog 496B
2021.10.10.lastbuildstate 177B
link.command.1.tlog 2KB
link.read.1.tlog 2KB
vc120.pdb 76KB
2021.10.10.log 1KB
vc120.idb 35KB
text1.obj 4KB
2021.10.10.vcxproj 4KB
2021.10.10.sdf 1.88MB
2021.10.10.sln 954B
Debug
2021.10.10.exe 31KB
2021.10.10.ilk 225KB
2021.10.10.pdb 435KB
分支循环练习
分支循环练习
text.c 5KB
分支循环练习.vcxproj 4KB
分支循环练习.vcxproj.filters 810B
分支循环练习.sln 978B
通讯录
通讯录
utili.h 76B
通讯录.vcxproj 4KB
通讯录.vcxproj.filters 1KB
contact.h 81B
contact.c 54B
ContactMain.c 179B
通讯录.sln 951B
11.20往前
11.20往前.sln 957B
11.20往前
11.20往前.vcxproj 4KB
11.20往前.vcxproj.filters 922B
text.c 969B
部分作业内容
部分作业内容
text.c 6KB
部分作业内容.vcxproj 4KB
部分作业内容.vcxproj.filters 922B
部分作业内容.sln 978B
.gitignore 2KB
c语言
5.17
5.17
.c 532B
5.17.vcxproj 4KB
5.17.vcxproj.filters 918B
file2.dat 0B
5.17.sln 936B
text.c
text.c.sln 942B
text.c
text.1.c 463B
text.c 362B
text.c.vcxproj.filters 1007B
text.c.vcxproj 4KB
5.18
5.18.sln 936B
5.18
stud 160B
5.18.vcxproj 4KB
1.c 1KB
5.18.vcxproj.filters 919B
初始c
2021.10.11
10.11.c 1KB
2021.10.11.vcxproj 4KB
2021.10.11.vcxproj.filters 923B
2021.10.11.sln 954B
.gitattributes 2KB
共 60 条
- 1
不安分的小女孩
- 粉丝: 9267
- 资源: 2015
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论2