1.unsigned long long 最大的期限 2^64 -1
2.回形方阵
#include <stdio.h>
int main()
{
int x,p,t,i;
int j,k,m,n;
printf("请输入你想要看到的n阶矩阵:");
scanf("%d",&x);
n=x/2+1;
p=x;
for(i=1,k=1;i<=x;i++){
for(j=1;j<k;j++){
printf("%4d",j);
}
for(j=1;j<=x-2*k+2;j++){
printf("%4d",k);
}
for(j=k-1;j>=1;j--){
printf("%4d",j);
}
printf("\n");
if(i<=x/2) k++;
else k--;
if(i==x/2&&x%2==0) k--;
}
}
3.int和void代表的是返回值的类型。
int main和void main本质上的区别就是在main函数结尾是否需要有返回
int main出现在C++的主函数中比较多,因为需要返回一个int类型的值,
所以main函数一般都以return 0;结尾,必须返回一个int型。
4.预处理
#include <stdio.h>
#define S(x) 4*x*x+1
int main()
{
int i=6,j=8;
printf("%d",S(i+j));
}
将6+8直接换上去
即 4* 6+8* 6+8+1;
5.大长度的 A-B 如果为0 输入YES 否则 输入NO
中途可能会出现 有+ - 在前面和小数点。
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define N 500
int main()
{
int t,i,j,k;
int m,n;
char a[N],b[N],c[N]; //={"+"};
const char d[]={"+"};
char *s,*p;
while(scanf("%s %s",a,b)!=EOF)
{
strcpy(c,d);
// printf("c=%s\n",c);
s=a,p=b;
if(*s=='+'&&*p=='+'){
k=strcmp(a,b);
if(k==0) printf("YES\n");
else printf("NO\n");
continue;
}
else if(*s=='-'&&*p=='-'){
k=strcmp(a,b);
if(k==0) printf("YES\n");
else printf("NO\n");
continue;
}
else if(*s=='+'&&*p=='-'){
printf("NO\n");
continue;
}
else if(*s=='-'&&*p=='+'){
printf("NO\n");
continue;
}
else if(*s!='-'&&*s!='+'){
if(*p!='-'&&*p!='+') {
k=strcmp(a,b);
if(k==0) printf("YES\n");
else printf("NO\n");
continue;
}
else if(*p=='-'){
printf("NO\n");
continue;
}
else if(*p=='+'){
strcat(c,a);
k=strcmp(c,b);
if(k==0) printf("YES\n");
else printf("NO\n");
continue;
}
}
else if(*p!='-'&&*p!='+'){
if(*s!='-'&&*s!='+') {
k=strcmp(a,b);
if(k==0) printf("YES\n");
else printf("NO\n");
continue;
}
else if(*s=='-'){
printf("NO\n");
continue;
}
else if(*s=='+'){
strcat(c,b);
k=strcmp(c,a);
if(k==0) printf("YES\n");
else printf("NO\n");
continue;
}
}
}
}