c++如何输出一个int范围的整型数

计算30!后,想要将结果整型数的形式输出,但是已经超出int的范围,应该怎样做?希望得到大神的解答!

c++

2个回答

用unsigned long long 来计算(就是用这个代替int)然后就可以算出来了

下面代码我试过,可以用

 #include <iostream>
using namespace std;
int main(){
    unsigned long long ans = 1;
    for (int i = 2; i <= 30;++i) {
        ans *= i;
    }
    cout << ans;
} 

9682165104862298112
上面是结果
可以关注我的CSDN,或者是我的微信公众号: 肥宅Sean笔记
我日常写写笔记
在公众号回复help就可以得到帮助文档

30!可以用double计算,再大需要用字符串模拟的大数运算了。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
c语言中函数中变量范围的问题?
ATT 测试环境:vs2013 win7 直接上代码 ``` # include <stdio.h> # include <stdlib.h> void switch_a () //声明switch_a函数 void menu()//声明menu函数 int main() { int a, b; //参加运算的两个数字 int c; //判断进行什么运算的变量 printf("欢迎使用四则运算器\n"); printf("请输入两个整型数字以空格隔开\n"); scanf_s("%d %d", &a, &b); //输入 两个整数 分别到a,b变量中 menu(); //调用menu函数 scanf_s("%d", &c);//输入1,2,3,4其中一个数字到变量c中 switch_a ();//调用switch_a函数 system("pause"); return 0; } void menu() { printf("+ 选择 1\n"); //输出菜单上的选择内容 printf("- 选择 2\n"); printf("x 选择 3\n"); printf("/ 选择 4\n"); return 0; } void switch_a () { switch (c) //判断C的值 { case 1: //c == 1 就是加法运算 printf("%d+%d=%d\n", a, b, a + b); break; case 2: //c == 2 就是减法运算 printf("%d-%d=%d\n", a, b, a - b); case 3: // c == 3 就是乘法运算 printf("%dX%d=%d\n", a, b, a*b); case 4: //c == 4 就是除法运算 printf("%d/%d=%d\n", a, b, a / b); default: //c == other 输出以下信息 printf("本程序只能输入1,2,3,4 您输入的数字应该不是它们之间的,请仔细检查!\n"); break; } return 0; } ``` 问题: 为什么switch_a函数里的a,b,c 还可以用?a,b,c的声明都是在main函数里面进行的
C语言新手问题scanf函数将字符串指针用%c的格式输出结果是什么?
``` #include<stdio.h> int main(){ char *string="I love China"; printf("%c\n",string); return 0; } ``` 我用vs2005执行结果是“?” 上网查了,有一篇文章“作者:Lemon_jay 来源:CSDN 原文:https://blog.csdn.net/lemon_jay/article/details/82917000 ”,这篇文章意思是这是将字符串指针的值的十进制形式输出,但%c要求输出字符,将地址值转换为对应的字符输出,网上又有讲大于127的整型用%c输出要截取低位。 我的理解是:string类型是char *,占内存是四个字节,值是16进制数,我调试string是0x004157b8,十进制是4282296,那么是直接把0x004157b8去截取低位b8,还是把string先转十进制数4282296,变成整型常量,再用int存储,而整型存储又是以补码存放(当然这个正数补码就是原码),再截低位b 8? b8十进制是184,书上ASCII码值中有从0到127,这个184怎么办,为什么输出是“?”,网上好像讲标准ASCII 码也叫基础ASCII码,使用7 位二进制数,第1位二进制为0,而这里184二进制是10111000,第一位是1。 还有,我把上面的数十进制4282296以及把它加1加2(即4282297,4282298)这样输出, ``` #include<stdio.h> int main(){ char *string="I love China"; printf("%c\n",4282296); return 0; } ``` 结果都是“?” 这样是不是把这两个整型常量先用int存储,分别是0x004157b9和0x004157ba,再截取低位,即b9和ba,十进制为185,186,还是不在127范围内,二进制为10111001,10111010,第一位还是1,这是不是说截了低位也就是只有8位二进制数后第一位是1,输出都是“?”? 网上又有讲将300,400输出,也就是如下: ``` #include<stdio.h> int main(){ char *string="I love China"; printf("%c\n",4282296); return 0; } ``` 300结果是“,”,400结果是“?”,300二进制是100101100,400二进制是110010000,这个又是不是这样:300,400都是整型常量,都被内存以0000000100101100和0000000110010000存储,再截取低位,300为00101100,400为10010000,而00101100十进制为44,%c输出就是“,”,10010000第一位是1,输出就是就是“?”? 希望各位大神能详细指教,万分感谢·
如何解决C语言中求和超时的问题?
问题描述 求1+2+3+...+n的值。 输入格式 输入包括一个整数n。 输出格式 输出一行,包括一个整数,表示1+2+3+...+n的值。 数据规模与约定 1 <= n <= 1,000,000,000。 本题另一个要值得注意的地方是答案的大小不在你的语言默认的整型(int)范围内, 如果使用整型来保存结果,会导致结果错误。 !使用循环和公式求法会导致运算超时(例如以下代码,超时),请问怎样解决此问题(提高运算效率)?要求用C/C++解决。 #include<stdio.h> int main() { long long n,i,sum=0; scanf("%ld",&n); for(i=1;i<=n;i++) sum+=i; printf("%ld\n",sum); return 0; }
sample等价 答案错误 只有1位 答案正确 零 答案正确
输出整数各位数字 (10分) 本题要求编写程序,对输入的一个整数,从高位开始逐位分割并输出它的各位数字。 输入格式: 输入在一行中给出一个长整型范围内的非负整数。 输出格式: 从高位开始逐位输出该整数的各位数字,每个数字后面有一个空格。 输入样例: 123456 输出样例: 1 2 3 4 5 6 #include <stdio.h> int main(void) { int number,temp1,temp2,sum=0; scanf("%d",&number); if(number==0) { printf("0 "); } else { while(number>0) { temp1=number%10; number/=10; sum=sum*10+temp1; } while(sum>0) { temp2=sum%10; sum/=10; printf("%d ",temp2); } } return 0; }
c语言位运算,大佬们救救萌新吧
![图片说明](https://img-ask.csdn.net/upload/201911/26/1574739046_205820.png) 定义函数unsigned mod(unsigned a, unsigned b, unsigned c); 功能是计算并返回a*b%c的结果。要求考试a, b, c的范围是大于0且小于 231,程序不能使用64位整型(如:long long类型或__int64)求解。 问题:a*b可能溢出(超出32位unsigned int型的表示范围)。为解决此问题,可用如下算法。 设unsigned型变量b的每个二进制位为xi (i=0,1, …, 31),i=0为最低位,i=31为最高位,则 , 所以 上式中,a*xi的结果或者为a或者为0; *2运算可用左移1位操作实现(小于231的整数*2结果一定小于232, 不会发生溢出); %c的结果是小于c的,而c小于231,它与a求和也不会发生溢出。 编写完整程序,用迭代法实现上述算法。 要求测试b的每个二进制xi位为1或0的操作必须采用位运算实现。 输入提示:"Input unsigned integer numbers a, b, c:\n" 输入格式:"%u%u%u" 输出格式:"%u*%u%%%u=%u\n" 源程序代码:
我写了一个,但答案不对,希望帮忙改一下,谢谢
本题要求输出2到n之间的全部素数,每行输出10个。素数就是只能被1和自身整除的正整数。注意:1不是素数,2是素数。 输入格式: 输入在一行中给出一个长整型范围内的整数。 输出格式: 输出素数,每个数占6位,每行输出10个。如果最后一行输出的素数个数不到10个,也需要换行。 输入样例 10 输出样例: 2 3 5 7 ** 我的答案输出里多了9** #include<stdio.h> #include<math.h> long int sushu(long int n); int main() { long int i,number; scanf("%d",&number); for(i=2;i<=number;i++) { if(sushu(i)==1) printf("%6d",i); } } long int sushu(long int n) { int i; float pf; pf=sqrt(n); for(i=2;i<=pf;i++) { if(n%i==0) return 0; break; } if(i>pf) return 1; }
我写了一个,但答案不对(每行不到十个就换行了),希望帮忙改一下,谢谢
7-10 输出2到n之间的全部素数 (20 分) 本题要求输出2到n之间的全部素数,每行输出10个。素数就是只能被1和自身整除的正整数。注意:1不是素数,2是素数。 输入格式: 输入在一行中给出一个长整型范围内的整数。 输出格式: 输出素数,每个数占6位,每行输出10个。如果最后一行输出的素数个数不到10个,也需要换行。 输入样例: 10 输出样例: 2 3 5 7 这是我写的 #include<stdio.h> #include<math.h> long int sushu(long int n); int main() { long int i,number,count=0; scanf("%d",&number); for(i=2;i<=number;i++) { if(sushu(i)==1) printf("%6d",i); count++; if(count%10==0){ printf("\n");} } if(count%10!=0) printf("\n"); } long int sushu(long int n) { int i; float pf; pf=sqrt(n); for(i=2;i<=pf;i++) { if(n%i==0||n==1) return 0; } if(i>pf) return 1; }
一道OJ上的题,数的划分,求大神解答
有N个排列好的数,不改变排列次序,要分成K个部分,每个部分至少有一个数, (其中K <=N),若将每一个部分的数相乘,然后将K个部分相加,则可以得到一个表达式,求这个表达式的最大数值。 输入格式 文件第一行为2个整数N、K 下面N行为N个整数(N<=100,整数的范围都在整型以内) 样例输入 5 2 1 2 3 4 5 样例输出 121 我的思路是动态规划:以f(i,j)表示分成i组,最后一个数是j的最大数值。 以下是我的代码: #include <iostream> #include <algorithm> using namespace std; int n,a[101],m,f[101][101]; int main() { cin>>n>>m; for (int i=1;i<=n;++i) cin>>a[i]; for (int i=1;i<=m;++i) for (int j=i;j<=n;++j) { int s=1; for (int k=j-1;k>=i-1;--k) { s*=a[k+1]; f[i][j]=max(f[i][j],f[i-1][k]+s); } } cout<<f[m][n]; return 0; }
[初学c++]我的代码哪有问题。。。
**题目** 3-5难度系数1 输出整数各位数字 (5 分) 本题要求编写程序,对输入的一个整数,从高位开始逐位分割并输出它的各位数字。 输入格式: 输入在一行中给出一个长整型范围内的非负整数。 输出格式: 从高位开始逐位输出该整数的各位数字,每个数字后面有一个空格。 输入样例: 123456 输出样例: 1 2 3 4 5 6 写了两种 (一) ``` #include <iostream> using namespace std; int leng(long a); int main() { long x; cin >> x; int i = leng(x),z=leng(x); int * num = new int[i]; if (x == 0)cout << "0 "; while (x != 0) { num[i]=x%10;i--; x /= 10; } for (int y = 1; y <= z; y++) { cout << num[y] << " "; } return 0; } int leng(long a) { using namespace std; int leng = 0; while (a > 0) { a /= 10; leng++; } return leng; } ``` 测试点 提示 结果 耗时 内存 **0 sample等价 运行时错误 3 ms 384KB** 1 只有1位 答案正确 2 ms 420KB 2 零 答案正确 2 ms 404KB (二) ``` #include <iostream> using namespace std; int main() { long n,x; int num, temp; cin>>n; x = n; int k = 1; temp = 0; while (x!=0) { temp++; k *= 10; x /= 10; } x = n; if (n == 0)cout << "0 "; while (temp!=0) { k /= 10; num = x / k; x %= k; cout << num<<" "; temp--; } return 0; } ``` 测试点 提示 结果 耗时 内存 **0 sample等价 浮点错误 2 ms 512KB** 1 只有1位 答案正确 2 ms 496KB 2 零 答案正确 2 ms 384KB
输入为“任意进制+数值”,想输出十进制下该数的数值,但怎么也输出不对,求解答!
int main() { int i=0,j,k,s=0,d=0,n=0; int q=1; int a,b; char str1[100]; char str2[100]; int num[100]; cin>>i; gets(str1); k=strlen(str1)-2; while(k>=0) { a=getnum(str1[k]); a=a*q; s=s+a; q=q*i; k--; } cout<<s<<endl; //其中getnum()函数是我自己写的,功能是将字符型转化为int型,这个函数我测试过,没问题。例如‘a’->10, 'z'->35 //进制数为整型,数值为字符串(‘0’~‘9’表示0~9,‘a’~'z'表示10~35),进制数输入范围为2~35
这是一个C++的排序算法,运行结果总是不正确,求大神帮帮忙改一下
(1)随机生成一组关键码(关键码为整型,取值范围为0~99); (2)采用插入排序算法进行排序,输出排序结果; (3)采用交换排序算法进行排序,输出排序结果; (4)采用选择排序算法进行排序,输出排序结果; ``` #include <iostream> #include <string> #include <ctime> #include <stdlib.h> using namespace std; //插入排序 void insertSort(int r[],int n) { int i,j; for (i=2;i<=n;i++){ r[0]=r[i]; for( j=i-1;r[0]<r[j];j--) r[j+1]=r[j]; r[j+1]=r[0]; } } //交换排序 void BubbleSort(int r[],int n) { int i,j; for (i = 0; i < n-1; i++){ for (j= 0; j < n-1-i; j++){ if (r[j] > r[j+1]){ int temp = r[j+1]; r[j+1] = r[j]; r[j] = temp; } } } } //选择排序 void SelectSort(int r[],int n){ int i,j; for (i=1; i < n; i++){ int index = i; for (j=i+1; j<=n;j++){ if (r[j] < r[index]){ index = j; } } //找到了最小的值再交换 if(index!=i){ int temp = r[i]; r[i] = r[index]; r[index] = temp; } } } void useRand(int r[],int size) { srand((unsigned)time(NULL)); cout << "the rand number is:" <<endl; for(int i=0;i<=9;i++) { r[i]=rand()%99+1; cout << r[i] << ","; } cout << endl; } void copy(int a[],int b[],int n) { for(int i=0;i<n;i++) b[i]=a[i]; } void print(int a[10],int n) { for(int i=0;i<n;i++) cout << a[i] << ","; cout << endl; } int main(){ int r[10],a[10],b[10],c[10]; useRand(r,10); copy(r,a,10); copy(r,b,10); copy(r,c,10); insertSort(a,10); cout << "插入排序后:" << endl; print(a,10); BubbleSort(b,10); cout << "交换排序后:" << endl; print(b,10); SelectSort(c,10); cout << "选择排序后:" << endl; print(c,10); return 0; } ```
有一个关于用C语言编写流量控制的问题,请大神帮忙~
#include<stdio.h> #include<string.h> int main() { char str[31],temp[31]; //定义IP地址为32位的字符类型 int a,b,c,d; //定义IP地址的四个字节为a,b,c,d,并且均为整型的 printf("请输入IP地址"); while(gets(str) != NULL); { if(scanf(str,"%d.%d.%d.%d",&a,&b,&c,&d)==4 && a>=0 && a<=255 && b>=0 && b<=255 && c>=0 && c<=255 && d>=0 && d<=255) //IP地址每个字节的范围限制 { printf(temp,"%d.%d.%d.%d",a,b,c,d); if(strcmp(temp,str)==0) { printf("IP地址合法\n"); } else { printf("IP地址不合法\n"); } } else { printf("IP地址不合法\n"); } } return 0; } 在上面的基础上,我想加入一个流量控制的功能,请问怎么编写,请告知,谢谢!
VS2008 非托管C++调用WebService ATL文件报错
小弟MFC新手一枚,最近公司有个项目升级功能,需要调用WebService服务接口,项目的开发环境是VS2008,基于MFC对话框。根据网上VS2008调用WebService的方法,下载了开源代码 ATL_Server_Source_and_Headers_9_0_70425_Alpha.zip,利用生成的sproxy.exe工具把WebService 的wsdl文件生成了WS_Service1.h头文件,引入工程后,编译就生成如下错误,折腾好几天了,一直找不到原因,求大神指点看看什么原因,拜谢。。。(下周二功能要验收,问题没解决,人都要疯了,没办法了,只能到宝地求助) PS:我自己重新新建了一个基于VS2008的MFC对话框工程,可以正常编译通过,只有公司的这个项目不行,会报如下错误。两个工程里面的属性设置我也对比过,是一样的,所以可以排除是开发环境的原因。 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlcom.h(5900) : error C2296: “>>”: 非法,左操作数包含“unsigned long *”类型 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlutil.h(309) : error C2440: “return”: 无法从“DWORD”转换为“unsigned long *” 1> 从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转换 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlutil.h(331) : error C2440: “return”: 无法从“DWORD_PTR”转换为“unsigned long *” 1> 从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转换 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlutil.h(343) : error C2440: “=”: 无法从“UINT_PTR”转换为“unsigned long *” 1> 从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转换 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlutil.h(391) : error C2664: “SymGetSymFromAddr”: 不能将参数 3 从“unsigned long **”转换为“PDWORD” 1> 与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlutil.h(421) : error C2440: “=”: 无法从“unsigned long”转换为“unsigned long *” 1> 从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转换 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlutil.h(553) : error C2664: “StackWalk”: 不能将参数 7 从“LPVOID (__stdcall *)(HANDLE,unsigned long *)”转换为“PFUNCTION_TABLE_ACCESS_ROUTINE” 1> 在匹配目标类型的范围内没有具有该名称的函数 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlcache.h(3044) : error C2144: 语法错误 : “unsigned long”的前面应有“)” 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlcache.h(3044) : error C2059: 语法错误 : “)” 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlisapi.h(10469) : warning C4005: “MAX_NAME_LEN”: 宏重定义 1> d:\code manage\ats\ats2 储能机\1源代码\rs485通讯\复件 ats410-00011-037_mes\ateprogram_chromadc_double\GWCommonPublic.h(146) : 参见“MAX_NAME_LEN”的前一个定义 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2406) : error C2446: “==”: 没有从“unsigned int”到“unsigned long *”的转换 1> 从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转换 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2406) : error C2040: “==”: “unsigned long *”与“unsigned int”的间接寻址级别不同 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2406) : error C2446: “==”: 没有从“unsigned int”到“unsigned long *”的转换 1> 从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转换 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2406) : error C2040: “==”: “unsigned long *”与“unsigned int”的间接寻址级别不同 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2474) : error C2446: “==”: 没有从“unsigned int”到“unsigned long *”的转换 1> 从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转换 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2474) : error C2040: “==”: “unsigned long *”与“unsigned int”的间接寻址级别不同 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2474) : error C2446: “==”: 没有从“unsigned int”到“unsigned long *”的转换 1> 从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转换 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2474) : error C2040: “==”: “unsigned long *”与“unsigned int”的间接寻址级别不同 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2475) : error C2446: “==”: 没有从“unsigned int”到“unsigned long *”的转换 1> 从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转换 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2475) : error C2040: “==”: “unsigned long *”与“unsigned int”的间接寻址级别不同 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2475) : error C2446: “==”: 没有从“unsigned int”到“unsigned long *”的转换 1> 从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转换 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2475) : error C2040: “==”: “unsigned long *”与“unsigned int”的间接寻址级别不同 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2624) : error C2446: “==”: 没有从“unsigned int”到“unsigned long *”的转换 1> 从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转换 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2624) : error C2040: “==”: “unsigned long *”与“unsigned int”的间接寻址级别不同 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2624) : error C2446: “==”: 没有从“unsigned int”到“unsigned long *”的转换 1> 从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转换 1>D:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\atlhttp.inl(2624) : error C2040: “==”: “unsigned long *”与“unsigned int”的间接寻址级别不同 1>正在生成代码...
C语言练习题!好心人帮帮忙吧
本题要求编写程序,计算学生们的平均成绩,并统计及格(成绩不低于60分)的人数。题目保证输入与输出均在整型范围内。 输入格式: 输入在第一行中给出非负整数N,即学生人数。第二行给出N个非负整数,即这N位学生的成绩,其间以空格分隔。 输出格式: 按照以下格式输出: average = 成绩均值 count = 及格人数 其中平均值精确到小数点后一位。 #include<stdio.h> int main() { int N,count,i=1; float a,sum=0,average; scanf("%d\n",&N); if(N==0){printf("average=0\ncount=0");} else{ while(i<=N){ scanf("%d",&a); sum+=a; i++; if(a>=60){count++;} break; } average = sum / N; printf("average = %f\ncount = %d",average,count); } return 0; } 请问为什么错了呢
请问我的代码哪里不对呀,请各位帮我指点一下呀
本题要求编写程序,利用数组计算菲波那契(Fibonacci)数列的前N项,每行输出5个,题目保证计算结果在长整型范围内。Fibonacci数列就是满足任一项数字是前两项的和(最开始两项均定义为1)的数列,例如::1,1,2,3,5,8,13,...。 输入格式: 输入在一行中给出一个整数N(1≤N≤46)。 输出格式: 输出前N个Fibonacci数,每个数占11位,每行输出5个。如果最后一行输出的个数不到5个,也需要换行。 如果输入的N不在有效范围内,则输出"Invalid."。 输入样例1: 7 输出样例1: 1 1 2 3 5 8 13 输入样例2: 0 输出样例2: Invalid. #include <stdio.h> int main() { int N; scanf("%d",&N); int f[N],i; f[0]=f[1]=1; for(i=2;i<N;++i) { f[i]=f[i-1]+f[i-2]; } if(i<N-1) printf("Invalid"); for(i=0; i<N; ++i) if((i+1)%5) printf("%11d ",f[i]); else printf("%11d\n",f[i]); return 0; }
我的代码有什么错误,求解,请用c语言编写
/**本题要求编写程序,计算2个正整数的和、差、积、商并输出。题目保证输入和输出全部在整型范围内。 输入格式: 输入在一行中给出2个正整数A和B。 输出格式: 在4行中按照格式“A 运算符 B = 结果”顺序输出和、差、积、商。 输入样例: 3 2 输出样例: 3 + 2 = 5 3 - 2 = 1 3 * 2 = 6 3 / 2 = 1 **/ int main() {int A,B; scanf("%d %d",&A,&B); printf("%d+%d=%d\n",A,B,A+B); printf("%d-%d=%d\n",A,B,A-B); printf("%d*%d=%d\n",A,B,A*B); printf("%d/%d=%d\n",A,B,A/B); return 0; }
有没有会编写c程序的大神,帮我看看两个单独的程序怎么合成一个程序,谢谢
#include <stdio.h> #include <string.h> struct e { char a[10]; char b[10]; }z; int main() { int t=0; char s[10],d[10]; FILE *p; void as(); if ((p=fopen("m.txt","r+"))==NULL) { p=fopen("m.txt","w+"); t=1; } if(t==1) { printf("当前没有任何用户\n"); printf("请新建用户名: "); scanf("%s",s); printf("为用户设置密码: "); scanf("%s",d); strcpy(z.a,s); strcpy(z.b,d); fprintf(p,"%s %s",z.a,z.b); fclose(p); } if(t==0) { printf("请输入用户名: "); scanf("%s",s); fscanf(p,"%s %s",z.a,z.b); fclose(p); if (!strcmp(z.a,s)) { printf("请输入密码:"); scanf("%s",d);getchar(); if(!strcmp(z.b,d)) { char i; printf("是否要修改密码?(输入y修改,n退出!)"); scanf("%c",&i); if(i=='y') { printf("请输入修改密码:"); scanf("%s",z.b); p=fopen("m.txt","w+"); fprintf(p,"%s %s",z.a,z.b); fclose(p); #include<stdio.h> #include<string.h> int main() { char str[31],temp[31]; //定义IP地址为32位的字符类型 int a,b,c,d; //定义IP地址的四个字节为a,b,c,d,并且均为整型的 Printf(“请输入IP地址”) while(gets(str) != NULL) { if(scanf(str,"%d.%d.%d.%d",&a,&b,&c,&d)==4 && a>=0 && a<=255 && b>=0 && b<=255 && c>=0 && c<=255 && d>=0 && d<=255) //IP地址每个字节的范围限制 { printf(temp,"%d.%d.%d.%d",a,b,c,d); if(strcmp(temp,str)==0) { printf("IP地址合法\n"); } else { printf("IP地址不合法\n"); } } else { printf("IP地址不合法\n"); } } return 0; } 以上两个单独的程序都可以执行,但是怎么合成一个程序呢,麻烦大神们教教我
c程序 不知道哪存在问题
本题要求编写程序,计算N个有理数的平均值。 输入格式: 输入第一行给出正整数N(\le≤100);第二行中按照a1/b1 a2/b2 …的格式给出N个分数形式的有理数,其中分子和分母全是整形范围内的整数;如果是负数,则负号一定出现在最前面。 输出格式: 在一行中按照a/b的格式输出N个有理数的平均值。注意必须是该有理数的最简分数形式,若分母为1,则只输出分子。 输入样例1: 4 1/2 1/6 3/6 -5/10 输出样例1: 1/6 输入样例2: 2 4/3 2/3 输出样例2: 1 我的程序如下: #include<stdio.h> int main() { int n,A=0,B=1,i,j,m; scanf("%d",&n); int a[n],b[n]; for(i=0;i<n;i++) //输入 { scanf("%d/%d",&a[i],&b[i]); } for(j=0;j<n;j++) { B=B*b[j]; //通分的分母 for(i=0;i<n;i++) { if(j!=i) a[j]=a[j]*b[i]; //通分的分子 } A=A+a[j]; //得分子和 } B=B*n;// 平均值乘到分母上 if(A>B) m=A; //化简 else m=B; for(i=m;i>0;i--) { if(A%i==0&&B%i==0) { A=A/i; B=B/i; } } if(A==0) printf("0"); else if(B==1) printf("%d",A); else printf("%d/%d",A,B); return 0; } 谢谢(●'◡'●)
Dc++ 中报错问题[Error] ld returned 1 exit status
直接上源码了, 求大神指点 #include <stdio.h> #include <stdlib.h> #include <string.h> #define STU_INFO_FILE "d:\\classmates_info_file.txt" //定义文本信息存储路径 #define FAILURE 0xFFFFFFFF #define SUCCESS !0xFFFFFFFF #define MAX_STU_COUNT 60 int size = 59; //设置全局变量size用来记录通讯录的个数,和数组的下标一致换句话说就是学生的个数减去1 int judge; char name[MAX_STU_COUNT][10+1]; //存放姓名,每个班级50人,名字最长为10个字符; char email[MAX_STU_COUNT][20+1]; //存放姓名,每个班级50人,名字最长为10个字符; __int64 student_number[MAX_STU_COUNT]; //学号过长,即便unsigned int也不够存储,采用64位整型; __int64 mobile_phone_number[MAX_STU_COUNT]; __int64 qq_number[MAX_STU_COUNT]; int AddStuInfoFromFile() { int tmpi; char student_number_char[13 + 1]; char mobile_phone_number_char[11 + 1]; char qq_number_char[10 + 1]; FILE * pFile = NULL; pFile = fopen(STU_INFO_FILE, "r"); if(!pFile) { printf("AddStuInfoFromFile: File Open Failed!\n"); return FAILURE; } else printf("AddStuInfoFromFile: File Open Succeeded!\n"); memset(student_number,0,8); //memset(数组名,要初始化的值,大小) memset(mobile_phone_number,0,8); memset(qq_number,0,8); memset(name,0,MAX_STU_COUNT * (10 + 1)); memset(email,0,MAX_STU_COUNT * (20 + 1)); for(tmpi = 0; tmpi < MAX_STU_COUNT; tmpi++) { fscanf(pFile,"%s",student_number_char); fscanf(pFile,"\t%s",name[tmpi]); fscanf(pFile,"\t%s",mobile_phone_number_char); fscanf(pFile,"\t%s",email[tmpi]); fscanf(pFile,"\t%s\n",qq_number_char); student_number[tmpi] = _atoi64(student_number_char); mobile_phone_number[tmpi] = _atoi64(mobile_phone_number_char); qq_number[tmpi] = _atoi64(qq_number_char); if(student_number[tmpi]==student_number[tmpi-1]){ tmpi = tmpi - 1; size = tmpi; break;} //截止到此一共是tmpi位学生 编号从 0~tmpi-1 ; 若需要输出第n位学生则 则下表为 n-1 /* printf("name %d is %s\n", tmpi, name[tmpi]); printf("email %d is %s\n", tmpi, email[tmpi]); printf("qq_number %d is %I64d\n",tmpi, qq_number[tmpi]); */ } fclose(pFile); return SUCCESS; } void outputAll() { int tmpi; if(judge == FAILURE) return; for(tmpi = 0; tmpi <= size; tmpi++) { printf("%I64d\t%s\t%I64d\t%s\t%I64d\n", student_number[tmpi], name[tmpi], mobile_phone_number[tmpi], email[tmpi],qq_number[tmpi]); } } void output(int index); int delete2(int n); int insert(int index); int find(__int64 mobile,__int64 QQ); int main() { int n,n2,n3; __int64 mobile=0,QQ=0; if(judge = AddStuInfoFromFile()==FAILURE) return FAILURE; printf("请选择您所需操作:\n"); printf("1.查询\t2.插入\n3.删除\t4.输出通讯录\n"); char ch=getchar(); switch(ch){ case '1' :{ printf("请输入要查询学生的手机号码或者QQ号码,不选择项请填写数字0\n"); printf("手机号码:"); scanf("%I64d",&mobile); printf("QQ号码:"); scanf("%I64d",&QQ); find(mobile,QQ);}break;//查询 case '2' : { if(size==59)//应该放在该函数之前 printf("超出了学生个数个数的范围\n"); else{ printf("请输入要插入的位置:"); scanf("%d",&n3); insert(n3); }}break;//插入 case '3' :{ printf("请出入要删除学生的编号:"); scanf("%d",&n2); delete2(n2); }break;//删除 case '4' :{ printf("请选择:\n1.输出第n位同学\n2.输出整个通讯录\n") ; char ch2 = getchar();//清楚一个缓存 ch2 = getchar(); switch (ch2){ case '1' :{ printf("请输入要输出学生的编号:") ; scanf("%d",&n); output(n);};break; case '2' :outputAll();break; default :printf("您输入的操作序号无法识别\n"); } }break;//输出通讯录 default :printf("您输入的操作序号无法识别\n"); } printf("请输入要输出学生的编号:") ; scanf("%d",&n); output(n); return SUCCESS; } void output(int index) { int tmpi; if(judge == FAILURE) return; if(index-1>size) printf("超出了学生个数的范围"); else if(index<1) printf("输入的学生代号不正确\n"); else printf("%I64d\t%s\t%I64d\t%s\t%I64d\n", student_number[index-1], name[index-1], mobile_phone_number[index-1], email[index-1],qq_number[index-1]); } int find(__int64 mobile,__int64 QQ) //返回值为下标 { int a1=-1,a2=-1; int n; if(mobile != 0){ if(mobile>=10000000000&&mobile<=99999999999){ for(n=0;n<=size;n++){ if(mobile_phone_number[n]== mobile){ a1=n;break; } } if(a1==-1){ printf("未找到对应的同学\n"); return FAILURE;} } else{ printf("输入的手机号码不正确\n");return FAILURE;} } //下面是 手机号为0 if(QQ!=0){ if(QQ>0&&QQ<=9999999999){ for(n=0;n<=size;n++){ if(qq_number[n]==QQ){ a2=n;break; } if(a2==-1){ printf("未找到对应的同学\n");return FAILURE;}} } else printf("输入的qq号码不正确\n");return FAILURE;} if(QQ==0&&mobile==0){ printf("您没有输入需要搜索的手机号或QQ\n");return FAILURE;} if(a1==a2&&a1!=-1){ output(a1+1); return a1; } int insert(int index) //要求用户输入数据; { if(index>size+2){ printf("超出了可插入的范围\n");return FAILURE;} else if(index<1){ printf("输入的学生代号不正确\n");return FAILURE;} else{int size2=size; for(; size2+1 >= index ;size2--){ // 要删除第4个 下 标是3 最大下标是 size=6 是三的呗死替代 n为5 下标为4 size为 //6 用下标为5 的替代下标为 4 的 n变为6 下标 5 size=6 下标为6的代替下标为5的 size= 6 n为7 student_number[size2+1] = student_number[size2]; mobile_phone_number[size2+1] =mobile_phone_number[size2]; qq_number[size2+1] = qq_number[size2]; strcpy(name[size2+1],name[size2]); strcpy(email[size2+1],email[size2]);} size++; char student_number_char[13 + 1]; char mobile_phone_number_char[11 + 1]; char qq_number_char[10 + 1]; char ch=getchar(); printf("请输入该同学的姓名:"); gets(name[index-1]); printf("请输入该同学的邮箱:"); gets(email[index-1]); printf("请输入该同学的学号:"); gets(student_number_char); printf("请输入该同学的手机号码:"); gets(mobile_phone_number_char); printf("请输入该同学的QQ号码:"); gets(qq_number_char); student_number[index-1] = _atoi64(student_number_char); mobile_phone_number[index-1] = _atoi64(mobile_phone_number_char); qq_number[index-1] = _atoi64(qq_number_char); printf("已插入:(位置%d)\n",index); output(index); return index; } //用find查找信息 } int delete2(int n) { if(n>size+1) { printf("超出了学生个数个数的范围"); return FAILURE;} else if(n<1){ printf("输入的学生代号不正确\n"); return FAILURE;} else{ printf("已删除以下学生信息:\n"); output(n); for(;n<=size;n++){ // 要删除第4个 下 标是3 最大下标是 size=6 是三的呗死替代 n为5 下标为4 size为 //6 用下标为5 的替代下标为 4 的 n变为6 下标 5 size=6 下标为6的代替下标为5的 size= 6 n为7 student_number[n-1] = student_number[n]; mobile_phone_number[n-1] =mobile_phone_number[n]; qq_number[n-1] = qq_number[n]; strcpy(name[n-1],name[n]); strcpy(email[n-1],email[n]);} size--;} }}
PTA中提交后,0出现最多时错误!我这个代码哪里应该修改一下?
**求一批整数中出现最多的个位数字** 给定一批整数,分析每个整数的每一位数字,求出现次数最多的个位数字。例如给定3个整数1234、2345、3456,其中出现最多次数的数字是3和4,均出现了3次。 输入格式: 输入在第1行中给出正整数N(≤1000),在第二行中给出N个不超过整型范围的非负整数,数字间以空格分隔。 输出格式: 在一行中按格式“M: n1 n2 ...”输出,其中M是最大次数,n1、n2、……为出现次数最多的个位数字,按从小到大的顺序排列。数字间以空格分隔,但末尾不得有多余空格。 输入样例: 3 1234 2345 3456 输出样例: 3: 3 4 #include<stdio.h> int main() { int a[10]={0},n,i,j,num,max=0; scanf("%d",&n); for(i=0;i<n;i++){ scanf("%d",&num); while(num){ a[num%10]++; num/=10; } } for(i=0;i<10;i++) if(max<a[i]) max=a[i]; printf("%d:",max); for(i=0;i<10;i++) if(max==a[i]) printf(" %d",i); return 0; } ``` ```
终于明白阿里百度这样的大公司,为什么面试经常拿ThreadLocal考验求职者了
点击上面↑「爱开发」关注我们每晚10点,捕获技术思考和创业资源洞察什么是ThreadLocalThreadLocal是一个本地线程副本变量工具类,各个线程都拥有一份线程私有的数
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
此博客仅为我业余记录文章所用,发布到此,仅供网友阅读参考,如有侵权,请通知我,我会删掉。 补充 有不少读者留言说本文章没有用,因为天气预报直接打开手机就可以收到了,为何要多此一举发送到邮箱呢!!!那我在这里只能说:因为你没用,所以你没用!!! 这里主要介绍的是思路,不是天气预报!不是天气预报!!不是天气预报!!!天气预报只是用于举例。请各位不要再刚了!!! 下面是我会用到的两个场景: 每日下
面试官问我:什么是消息队列?什么场景需要他?用了会出现什么问题?
你知道的越多,你不知道的越多 点赞再看,养成习惯 GitHub上已经开源 https://github.com/JavaFamily 有一线大厂面试点脑图、个人联系方式,欢迎Star和完善 前言 消息队列在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在消息队列的使用和原理方面对小伙伴们进行360°的刁难。 作为一个在互联网公司面一次拿一次Offer的面霸,打败了无数
8年经验面试官详解 Java 面试秘诀
    作者 | 胡书敏 责编 | 刘静 出品 | CSDN(ID:CSDNnews) 本人目前在一家知名外企担任架构师,而且最近八年来,在多家外企和互联网公司担任Java技术面试官,前后累计面试了有两三百位候选人。在本文里,就将结合本人的面试经验,针对Java初学者、Java初级开发和Java开发,给出若干准备简历和准备面试的建议。   Java程序员准备和投递简历的实
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观
程序员一般通过什么途径接私活?
二哥,你好,我想知道一般程序猿都如何接私活,我也想接,能告诉我一些方法吗? 上面是一个读者“烦不烦”问我的一个问题。其实不止是“烦不烦”,还有很多读者问过我类似这样的问题。 我接的私活不算多,挣到的钱也没有多少,加起来不到 20W。说实话,这个数目说出来我是有点心虚的,毕竟太少了,大家轻喷。但我想,恰好配得上“一般程序员”这个称号啊。毕竟苍蝇再小也是肉,我也算是有经验的人了。 唾弃接私活、做外
大学四年自学走来,这些珍藏的「实用工具/学习网站」我全贡献出来了
知乎高赞:文中列举了互联网一线大厂程序员都在用的工具集合,涉及面非常广,小白和老手都可以进来看看,或许有新收获。
《阿里巴巴开发手册》读书笔记-编程规约
Java编程规约命名风格 命名风格 类名使用UpperCamelCase风格 方法名,参数名,成员变量,局部变量都统一使用lowerCamelcase风格 常量命名全部大写,单词间用下划线隔开, 力求语义表达完整清楚,不要嫌名字长 ...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple/ 
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
你知道的越多,你不知道的越多 点赞再看,养成习惯 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试点思维导图,也整理了很多我的文档,欢迎Star和完善,大家面试可以参照考点复习,希望我们一起有点东西。 前前言 为啥今天有个前前言呢? 因为你们的丙丙啊,昨天有牌面了哟,直接被微信官方推荐,知乎推荐,也就仅仅是还行吧(心里乐开花)
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca
Python爬虫精简步骤1 获取数据
爬虫的工作分为四步: 1.获取数据。爬虫程序会根据我们提供的网址,向服务器发起请求,然后返回数据。 2.解析数据。爬虫程序会把服务器返回的数据解析成我们能读懂的格式。 3.提取数据。爬虫程序再从中提取出我们需要的数据。 4.储存数据。爬虫程序把这些有用的数据保存起来,便于你日后的使用和分析。 这一篇的内容就是:获取数据。 首先,我们将会利用一个强大的库——requests来获取数据。 在电脑上安装
Python绘图,圣诞树,花,爱心 | Turtle篇
1.画圣诞树 import turtle screen = turtle.Screen() screen.setup(800,600) circle = turtle.Turtle() circle.shape('circle') circle.color('red') circle.speed('fastest') circle.up() square = turtle.Turtle()
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东
破14亿,Python分析我国存在哪些人口危机!
2020年1月17日,国家统计局发布了2019年国民经济报告,报告中指出我国人口突破14亿。 猪哥的朋友圈被14亿人口刷屏,但是很多人并没有看到我国复杂的人口问题:老龄化、男女比例失衡、生育率下降、人口红利下降等。 今天我们就来分析一下我们国家的人口数据吧! 更多有趣分析教程,扫描下方二维码关注vx公号「裸睡的猪」 即可查看! 一、背景 1.人口突破14亿 2020年1月17日,国家统计局发布
听说想当黑客的都玩过这个Monyer游戏(1~14攻略)
第零关 进入传送门开始第0关(游戏链接) 请点击链接进入第1关: 连接在左边→ ←连接在右边 看不到啊。。。。(只能看到一堆大佬做完的留名,也能看到菜鸡的我,在后面~~) 直接fn+f12吧 &lt;span&gt;连接在左边→&lt;/span&gt; &lt;a href="first.php"&gt;&lt;/a&gt; &lt;span&gt;←连接在右边&lt;/span&gt; o
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ......
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!
别低估自己的直觉,也别高估自己的智商
所有群全部吵翻天,朋友圈全部沦陷,公众号疯狂转发。这两周没怎么发原创,只发新闻,可能有人注意到了。我不是懒,是文章写了却没发,因为大家的关注力始终在这次的疫情上面,发了也没人看。当然,我...
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。   再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。   下文是原回答,希望能对你能有所启发。   如果我说,这个世界上人真的分三六九等,
为什么听过很多道理,依然过不好这一生?
记录学习笔记是一个重要的习惯,不希望学习过的东西成为过眼云烟。做总结的同时也是一次复盘思考的过程。 本文是根据阅读得到 App上《万维钢·精英日课》部分文章后所做的一点笔记和思考。学习是一个系统的过程,思维模型的建立需要相对完整的学习和思考过程。以下观点是在碎片化阅读后总结的一点心得总结。
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合
如何优雅地打印一个Java对象?
你好呀,我是沉默王二,一个和黄家驹一样身高,和刘德华一样颜值的程序员。虽然已经写了十多年的 Java 代码,但仍然觉得自己是个菜鸟(请允许我惭愧一下)。 在一个月黑风高的夜晚,我思前想后,觉得再也不能这么蹉跎下去了。于是痛下决心,准备通过输出的方式倒逼输入,以此来修炼自己的内功,从而进阶成为一名真正意义上的大神。与此同时,希望这些文章能够帮助到更多的读者,让大家在学习的路上不再寂寞、空虚和冷。 ...
雷火神山直播超两亿,Web播放器事件监听是怎么实现的?
Web播放器解决了在手机浏览器和PC浏览器上播放音视频数据的问题,让视音频内容可以不依赖用户安装App,就能进行播放以及在社交平台进行传播。在视频业务大数据平台中,播放数据的统计分析非常重要,所以Web播放器在使用过程中,需要对其内部的数据进行收集并上报至服务端,此时,就需要对发生在其内部的一些播放行为进行事件监听。 那么Web播放器事件监听是怎么实现的呢? 01 监听事件明细表 名
3万字总结,Mysql优化之精髓
本文知识点较多,篇幅较长,请耐心学习 MySQL已经成为时下关系型数据库产品的中坚力量,备受互联网大厂的青睐,出门面试想进BAT,想拿高工资,不会点MySQL优化知识,拿offer的成功率会大大下降。 为什么要优化 系统的吞吐量瓶颈往往出现在数据库的访问速度上 随着应用程序的运行,数据库的中的数据会越来越多,处理时间会相应变慢 数据是存放在磁盘上的,读写速度无法和内存相比 如何优化 设计
Linux 命令(122)—— watch 命令
1.命令简介 2.命令格式 3.选项说明 4.常用示例 参考文献 [1] watch(1) manual
Linux 命令(121)—— cal 命令
1.命令简介 2.命令格式 3.选项说明 4.常用示例 参考文献 [1] cal(1) manual
记jsp+servlet+jdbc实现的新闻管理系统
1.工具:eclipse+SQLyog 2.介绍:实现的内容就是显示新闻的基本信息,然后一个增删改查的操作。 3.数据库表设计 列名 中文名称 数据类型 长度 非空 newsId 文章ID int 11 √ newsTitle 文章标题 varchar 20 √ newsContent 文章内容 text newsStatus 是否审核 varchar 10 news...
Python新型冠状病毒疫情数据自动爬取+统计+发送报告+数据屏幕(三)发送篇
今天介绍的项目是使用 Itchat 发送统计报告 项目功能设计: 定时爬取疫情数据存入Mysql 进行数据分析制作疫情报告 使用itchat给亲人朋友发送分析报告(本文) 基于Django做数据屏幕 使用Tableau做数据分析 来看看最终效果 目前已经完成,预计2月12日前更新 使用 itchat 发送数据统计报告 itchat 是一个基于 web微信的一个框架,但微信官方并不允
相关热词 c#开发的dll注册 c#的反射 c# grid绑定数据源 c#多线程怎么循环 c# 鼠标左键 c# char占位符 c# 日期比较 c#16进制转换为int c#用递归求顺序表中最大 c#小型erp源代码
立即提问