提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
这一周儿
用到栈的知识(C语言
分析需要的函数:初始化栈;入栈;获取栈顶元素的值;判断是否为运算符;优先级比较;运算;出栈;
代码如下(示例):
void InitStack(Sqstack &s);//初始化栈 void Push(Sqstack &s, char ch);//入栈 char GetTop(Sqstack &s);//获取栈顶元素的值 int In(char ch, char operArr[10]);//判断是否为运算符 int Pop (Sqstack &s, char &x);//出栈 char Compare(char oper1, char oper2); //比较优先级 int Count(int x1, char op, int x2);//运算 int Cal();创建一维、二维数组。
优化内层循环:
for (i=0;i<n-1;i++) { for(j=0;j<n-i-1;j++) {before: j<n-1 after:j<n-i-1 减少遍历
非常简单的冒泡儿
#include <stdio.h> int main() { int a[100]; int n,t,i,j; scanf("%d",&n); for (i=0;i<n;i++) { scanf("%d",&a[i]); } for (i=0;i<n-1;i++)//注意范围 { for(j=0;j<n-i-1;j++)//注意范围 { if(a[j]>a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } } } for(i=0;i<n;i++) { printf(" %d",a[i]); } }转成冒泡倒叙(从大到小
if(a[j+1]>a[j]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; }套用模板
import datetime y1=int(input("please input year1:")) m1=int(input("please input month1:")) d1=int(input("please input date1:")) y2=int(input("please input year2:")) m2=int(input("please input month2:")) d2=int(input("please input date2:")) d1 = datetime.datetime(y1,m1,d1) d2 = datetime.datetime(y2,m2,d2) interval = d2 - d1 print(interval.days)不套用模板 初步思路是写多个if else语句分情况写润平年,二月腊月再算日期。 …省略多个错误思路… 上找了个C的思路经过整理:
y1=int(input("please input year1:")) m1=int(input("please input month1:")) d1=int(input("please input date1:")) y2=int(input("please input year2:")) m2=int(input("please input month2:")) d2=int(input("please input date2:")) if ((y2%400==0) or (y2%4==0 and y2%100!=0)): list = [ 0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ] i=m1 sum=0 //记得给sum一个初值 while i < m2: sum=sum+list[i] i+=1 else: list = [ 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ] i=m1 sum=0 while i < m2: sum=sum+list[i] i+=1 if d1>d2: sum=sum-(d1-d2) else: sum=sum+(d2-d1) j=y1 q=0 while j < y2: if ((j%400==0) or (j%4==0 and j%100!=0)): q+=1 j+=1 y=(y2-y1)*365+q sum=sum+y print("%d年%d月%d日与%d年%d月%d日相差%d天" %(y1,m1,d1,y2,m2,d2,sum))对于日的处理:eg 8.17 与 9.3 做减法 8.3与9.17做加法
写英语iwrite试图F12破解复制限制,终于找到那行代码发现还是修改不了QAQ,强行从源代码里黏贴进去答案发现系统不给上传,那没事了。
语句格式:
struct tag { member-list member-list member-list ... } variable-list ;理解:
struct Books { char title[50]; char author[50]; char subject[100]; int book_id; } book;2.复习数组
type arrayName [ arraySize ];
a[n] 错误 明确占用的地址量 int a[10];
不从零开始计下标就是铁憨憨
从具体数举例子写写画画更好写普适算法一点