自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 计算机组成原理 实验一 数据的存放顺序和对齐方式

1.我们找一个足够简单的数字比如1,取出他的地址,然后拿到第一个字节内容看看是0还是1即可,但是a是一个int类型的变量,对他取地址是一个int*类型的指针,对他解引用是直接拿到4个字节内容,要想拿到1个字节内容,我们应该先把int*类型的指针强制类型转换成char*类型的指针。结构成员在内存中的存储并不是想当然的一个接一个紧挨着排列下来的,由于提高数据读取速度的要求,计算机系统对内存中基本数据内省的存放存在内存对其就只,几要求这些数据的首地址必须是某个数的整数倍。不同机器内存可能存在不同的存储方式。

2024-04-29 10:35:49 903 1

原创 求Fibonacci数列的前40个数。

这个数列有如下特点:第1、2两个数为1、1。从第3个数开始,该数是其前面两个数之和。即:输入无输出输出Fibonacci数列的前40个数,并在每个数之后输出一个空格。请注意行尾输出换行。样例输入无样例输出1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 46368 75025 121393 196418 317811 514229 832

2022-05-02 20:37:04 2643

原创 求乘积末尾零的个位数

乘积尾数0的个数题目描述对于以下10个数:1,2,3,4,5,6,7,8,9,10他们的乘积为3628800,它的尾数有两个连续的0现在给你十个10000以内(含)的整数,求他们的积的尾数有几个连续的零输入10个整数,每一个数不超过10000,每个数之间用空格隔开输出一个整数,表示十个数乘积结尾有几个连续的0样例输入1 2 3 4 5 6 7 8 9 10样例输出2#include<stdio.h>int main(){ int a..

2022-04-18 21:46:28 798

原创 输出任意菱形最简单方法

#include<stdio.h>int main(){ int a[10][10],i,j,k,n; scanf("%d",&n); for(i=0;i<=n;i++)//控制上部分行数 { for(j=0;j<n-i;j++)// 空格与i的关系 n-i printf(" "); for(k=0;k<2*i-1;k++)//*与i的关系 2*i-1 printf("*"); printf("\n"); } for.

2022-03-17 10:51:17 399

原创 Counting stars

Counting stars大白睡不着,于是数星星,他想天上的星星会是3的倍数吗?输入一个数字,判断是否为3的倍数,若是输出YES否则输出NO,结尾换行。【输入】123123123123123123123123123123123123123123123【输出】YES此题不可用;long long int 不够长...

2022-03-17 10:40:45 338

原创 Drift 车流不息

Drift 车流不息大城市中的信号灯常因为交通拥堵而使用十六进制来表示更长的等待时间,如F0,看到它就熄火等待吧。先输入一个两位字符串,第一位为0~F,第二位为0~9,为了那些不了解十六进制的人们将等待秒数转换为十进制后输出。【输入】F0A1【输出】150101...

2022-03-17 10:38:48 85

原创 one hundred point

one hundred point一个整数序列中所有的数都满足可以被100整除D次例如 当D=0时 这个序列为1 2 3 4 5 6 7...当D=1时 这个序列为100 200 300 400...当D=2时 这个序列为10000 20000 30000...多行输入D和N(表示序列中的第N个数),输出这个数(0<=D<=2 0<N<=100)输出换行【输入】0 51 152 ...

2022-03-17 10:35:10 94

原创 十进制转十六进制

toHEX十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。给出一个非负整数,将它表示成十六进制的形式。输入包含一个非负整数a,表示要转换的数。0<=a<=2147483647输出这个整数的16进制表示样例输入3...

2022-03-17 10:33:24 1670

原创 无聊的狱卒

#include<stdio.h>int main(){ int a[101]={0},i,j,n; scanf("%d",&n); for(i=1;i<=100;i++) for(j=1;j<=100;j++) { if(j%i==0) { if(a[j]==0) a[j]=1; else if(a[j]==1) a[j]=0; } } printf("%d\n",a[n]);}有个狱卒管理着一层监狱的号房。这个监.

2022-03-17 10:32:20 95

原创 题目:求分子量

求分子量我们使用相对于氢原子的相对原子质量来表示每个元素的原子量。使用原子和数字的组合表达表示分子式。为了在计算机中表达简单,我们将下标数字简单记为普通数字。比如H2O 是水分子。我们使用分子中的所有元素的相对原子质量来表示分子的相对分子质量。比如H2O的相对分子质量是 1*2+16=18。现在需要你求出给定分子式的相对分子质量。输入的第一行是一个正整数n,表示有n组测试数据。接下来n行每行输入一个字符串,表示某个分子式,分子式中只包含大写字母和数字。注意:输入数据只包含8种元素,而这.

2022-03-17 10:31:27 694

原创 题目:数学黑洞

数学黑洞已知:一个任意的四位正整数(全相同的除外,如1111)。将数字重新组合成一个最大的数和最小的数相减,重复这个过程,最多七步,必得6174,永远出不来。即:7641-1467=6174。我们称之为掉进黑洞。求证:所有四位数数字(全相同的除外),均能得到6174,输出掉进黑洞的步数。输入一个四位整数。输出掉进黑洞的过程。样例输入3120样例输出3210-123=30878730-378=83528532-2358=6174#include&lt.

2022-03-17 10:29:08 756

原创 逆序输出一个整数

小雏鸟学数学,12300反过来读是00321,大白说零不算,应该是321,小雏鸟心寒至极输入一个非负整数,输出它的逆序数,结尾换行【输入】1234【输出】4321#include<stdio.h>int main(){ int a,s=0; scanf("%d",&a); while(a!=0) { s=s*10+a%10; a=a/10; } printf("%d",s);}...

2022-03-17 10:21:50 346

原创 指针题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。

#include<stdio.h>int main(){ int i,k,m,n,num[30],*p; scanf("%d",&n); p=num; for(i=0;i<n;i++) *(p+i)=i+1; i=0; k=0; m=0; while(m<n-1) { if(*(p+i)!=0) k++; if(k==3) { *(p+i)=0; k=0; m++; } i++; if(i==n) i=0;.

2022-03-02 23:41:14 1846 2

原创 题目:一个5位数,判断它是不是回文数。即12321是回文数

#include<stdio.h> int main() { long int n,a,b,c,d; scanf("%d",&n); d=n%10; c=n/10%10; b=n/1000%10; a=n/10000; if(a==d&&b==c) printf("YES"); else printf("NO"); }同时,判断回文字符串代码:#include<stdio.h>#include<s..

2022-03-02 23:39:10 205

原创 题目:求1+2+3+...+20的阶乘的和。

#include <stdio.h>int main(){ int i; long long int sum,n; sum=0,n=1; for(i=1;i<=20;i++) { n=n*i; sum=sum+n; } //1+2+2*3+6*4+... printf("%lld\n",sum); }//结果为:2561327494111820313同时这题也可以用递归来做#i..

2022-03-02 23:35:42 194

原创 猴子吃桃问题

题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下
的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。程序分析:采取逆向思维的方法,从后往前推断。1) 设x1为前一天桃子数,设x2为第二天桃子数, 则:x2=x1/2-1, x1=(x2+1)*2x3=x2/2-1, x2=(x3+1)*2以此类推: x前=(x后+1)*22) 从第10天可以类推

2022-03-02 23:31:07 282

原创 题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?

#include<stdio.h>int main(){ float h,s; h=s=100; h=h/2; //第一次反弹高度 for(int i=2;i<=10;i++) { s=s+2*h; h=h/2; } printf("第10次落地时,共经过%f米,第10次反弹高%f米\n",s,h); return 0;}...

2022-03-02 23:29:03 153

原创 题目:一个数如果恰好等于它的因子之和,这个数就称为“完数“。例如6=1+2+3.编程找出1000以内的所有完数。

#include<stdio.h>int main(){ int a,i,sum=0; for(a=2;a<=1000;a++) { sum=0;//多次判断注意置为0 for(i=1;i<a;i++) if(a%i==0) sum+=i; if(sum==a) { printf("%d=",a); for(i=1;i<a;i++) if(a%i==0) printf("+%d",i); printf("\n");.

2022-03-02 23:28:04 186

原创 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。

#include<stdio.h>int main(){ int n,i; scanf("%d",&n); printf("%d=",n); for(i=2;i<=n;i++) { while(n%i==0) { printf("%d",i); n/=i; if(n!=1) printf("*"); } } .

2022-03-02 23:26:51 234

原创 题目:输出9*9口诀。

#include <stdio.h>int main(){ int i,j,n; scanf("%d",&n); for(i=1;i<=n;i++) { for(j=1;j<=i;j++) printf("%d*%d=%d ",j,i,j*i); printf("\n"); } return 0; }

2022-03-02 23:25:48 49

原创 题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

#include<stdio.h>#include<math.h>int main(){ int x=-100,m,n,c1,c2; for(;x<=1000000;x++) { m=x+100; n=m+168; c1=sqrt(m); c2=sqrt(n); if(c1*c1==m&&c2*c2==n) printf("%d ",x); }}注意从-100开始,-99也满足条件,答案为:-99,21,261,.

2022-03-02 23:24:38 139

原创 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

用 i,j,k 来表示三个位数,并且相互不等的情况#include<stdio.h>int main(){ int i,j,k,m,count=0; for(i=1;i<=4;i++) { for(j=1;j<=4;j++) { for(k=1;k<=4;k++) { if(i!=j&&i!=k&&j!=k) { count++; printf("%d%d%d ",

2022-03-02 23:22:09 53

原创 输出任意行数*菱形

#include<stdio.h>#include<string.h>int main(){ int i,j,n,k; scanf("%d",&n); for(i=1;i<=n;i++){ for(j=4-i;j>0;j--) printf(" "); for(k=1;k<=2*i-1;k++) printf("*"); printf("\n"); } for(i=1;i<=n-1;i++) { for(j.

2022-02-17 21:10:33 305

原创 用指针调用函数查找字符串中最后一个子字符串的位置并输出

编写程序,程序中函数fun的功能是:求出s所指字符串中最后一次出现的t所指子字符串的地址,通过函数返回值返回,在主函数中输出从此地址开始的字符串;若未找到,则函数值为NULL例如:当字符串中的内容为“abcdefabcdx”t中的内容为“ab”时,输出的结果应是:abcdx 当字符串中的内容为“abcdefabcdx”t中的内容为“abd”时,则程序输出未找到信息 not be found!注意:指针来实现程序功能这道题目的重点就在:两个字符串循环相比较,如果不相等直接跳出,如果相等并且跳出的条

2022-02-17 20:40:56 1401

原创 递归求2+2+22+222+............

#include<stdio.h>int main(){ int fun(int n); int n,i,s=0; scanf("%d",&n); for(i=1;i<=n;i++) s+=fun(i); printf("%d",s);}int fun(int n){ if(n==1) return 2; else return 2+10*fun(n-1);}

2022-01-22 11:36:07 2178

原创 题目:一个数如果恰好等于它的因子之和,这个数就称为“ 完数”。

题目:一个数如果恰好等于它的因子之和,这个数就称为" 完数”。例如6=|+2+3.编程找出1000以内的所有完数。#include<stdio.h>int main(){ int a,i,sum=0; for(a=2;a<=1000;a++) { sum=0;//多次判断注意置为0 for(i=1;i<a;i++) if(a%i==0) sum+=i;//求完数和 if(sum==a) printf("%d ",a);//打印 } }.

2022-01-18 18:57:45 374

原创 题目:利用条件运算符的嵌套来完成此题

题目:利用条件运算符的嵌套来完成此题:学习成绩><90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。程序分析: (a>b)?a:b这是 条件运算符的基本例子。#include<stdio.h>int main(){ int a; scanf("%d",&a); (a>=90)?printf("A"):((a<60)?printf("C"):printf("B")); //条件运算符 }...

2022-01-18 18:55:57 387

原创 哥德巴赫猜想

转载代码#include <stdio.h>int fun(int n){ int i; for(i=2;i<n;i++) { if(n%i==0) break; } if(i>=n) return 1;// 排除质数的情况 else return 0;}int main(){ int n; scanf("%d",&n); for

2022-01-18 18:47:41 148

原创 用结构体求复数相乘

用以下结构体实现代码块#include <stdio.h>struct complex{ int real; int imag;}a,b,c,t;int main(){ struct complex multiply(struct complex x,struct complex y); scanf("%d%d%d%d",&a.real ,&a.imag ,&b.real ,&b.imag );//输入复数参数 c=multiply(a

2022-01-18 18:43:49 1089

原创 关于母牛繁殖问题

假设单性繁殖成立,若一头母牛,从出生起第四个年头开始,每年生一头母牛,而生出的小母牛在之后的第四年也将具有生殖能力。按此规律,第n年时有多少头母牛?输入输入数据为整数n(|≤n≤40).输出对于每个n,输出其第n年的母牛数?样例输入5 6 7 8 9样例输出346913#include<stdio.h>int main(){ int fun(int n); int n; do { scanf("%d",&n); printf("%d\n",f

2022-01-17 21:18:22 689

原创 关于用调用和指针将最大值与最后一位交换,最小值与第一位交换

#include<stdio.h>int main(){ void output(int*p); void change(int*p); void input(int*p); int a[10]; input(a); change(a); output(a); }void input(int*p){ for(int i=0;i<10;i++) scanf("%d",p++); }void change(int*p){ int i,t,*max,*min

2022-01-15 14:16:22 336

原创 输入10个整数将其中最小的数与第1个数对换,把最大的数与最后一个数对换

标题 输入10个整数将其中最小的数与第1个数对换,把最大的数与最后一个数对换方法:先找出10个数中的最小数,把它和第1个数交换,然后再重新找10个数中的最大数,把它和最后一个数交换。#include<stdio.h>int main(){void change(int *x);int a[10],i,j;for(i=0;i<10;i++)scanf("%d",&a[i]); change(a);for(i=0;i<10;i++)printf(

2022-01-01 21:16:53 26426 4

数据结构整本书 期末冲刺 典型例题 :代码、注释

数据结构期末冲刺 典型例题 :代码、注释

2024-04-29

如何判断你的计算机是大端还是小端存储?

如何判断你的计算机是大端还是小端存储?

2024-04-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除