第一次个人编程作业

 

 

这个作业属于哪个课程https://edu.cnblogs.com/campus/fzzcxy/SE
这个作业要求在哪里 https://edu.cnblogs.com/campus/fzzcxy/SE/homework/10283
这个作业的目标 <用汉字来进行编程>
作业正文 ....
其他参考文献 ...

代码行数:

需求分析时间:3h

编码时间:一天

 

作业要求

  1. 发布一篇随笔,使用markdown语法进行编辑。
  2. 在随笔前附上github仓库地址。

编程题目

汉字是迄今为止持续使用时间最长的文字,也是上古时期各大文字体系中唯一传承至今者,中国历代皆以汉字为主要的官方文字。我们在感叹汉字的源远流长时,也不禁感慨,为什么没有一门使用汉字编程的语言?
小杨同学想到:用汉字来进行编程一定很有趣,来请你帮帮他。

编程要求

请编写一个程序,制作一个简易的中文语言编译器,即使用中文语法进行编程,输入为逐行输入,每行为一个语句,一个语句代变一个操作,满足以下语法要求(括号内代变格式类型,具体参考样例):

  • 变量定义:整数 (变量名) 等于 (数字)
  • 运算(加法):(变量名) 增加 (数字)
  • 运算(减法):(变量名) 减少 (数字)
  • 输出:看看 (变量名) or 看看 “(字符串内容)”

附加要求:

  • 选择:如果 (判断语句) 则 (操作语句) 否则 (操作语句)
    若否则后没有任何操作使用(无)来进行填充(参考样例2)。

样例1

输入:

整数 气温 等于 十
气温 减少 三
气温 增加 二
看看 气温
如果 气温 大于 八 则 看看 “你好,世界” 否则 看看 “冻死我了”

输出:

九
你好,世界

样例2

输入:

整数 小杨年龄 等于 八
整数 小杨零花钱 等于 二
小杨年龄 增加 一
如果 小杨年龄 大于 八 则 小杨零花钱 增加 一 否则 无
看看 小杨零花钱

输出:

注意事项

  1. 输入输出采用utf-8编码,请在编码过程中注意。
  2. 数字只会出现:零一二三四五六七八九十。(此条作废,可先完成0-10的情况)
  3. 字符串输出的双引号是全角,即中文双引号。
  4. 变量类型要求只有整数,如有余力,可以自己实现更多。
  5. 测试数据会相较于样例复杂,请考虑充分需求。
  6. 不限制编程语言。
  7. 不能使用eval函数动态执行代码,或调用系统指令。
  8. 数据输入形式为交互式运行,类似于shell。

github要求

  1. 创建一个github仓库。
  2. 使用git或其他git图形应用程序(Github Desktop,TortoiseGit等)将程序代码传到仓库,commit信息遵守一定的git规范。
  3. 加入.gitignore文件和开源license。

随笔要求

要求记录包括但不限于以下内容:

  1. 记录自己的代码行数,需求分析时间,编码时间。
  2. 分解需求的思路,分解成多个模块,并阐述为什么这么分,优势在哪,可以附上代码片段。
  3. 记录不会的知识的学习过程以及修改优化的过程;可以附上资料网站。
  4. 自我发挥。

 

代码

#include<stdio.h>
#include<string.h>
int sum;
char name[100],ini[20],cal[100];
int bsz(char str[]){
if(strcmp("零",str)==0)
    return 0;
if(strcmp("一",str)==0)
    return 1;
if(strcmp("二",str)==0)
    return 2;
if(strcmp("三",str)==0)
    return 3;
if(strcmp("四",str)==0)
    return 4;
if(strcmp("五",str)==0)
    return 5;
if(strcmp("六",str)==0)
    return 6;
if(strcmp("七",str)==0)
    return 7;
if(strcmp("八",str)==0)
    return 8;
if(strcmp("九",str)==0)
    return 9;
if(strcmp("十",str)==0)
    return 10;
}
void zj(char str[]){
if(strcmp(" 增加 一",str)==0)
    sum+=1;
if(strcmp(" 增加 二",str)==0)
    sum+=2;
if(strcmp(" 增加 三",str)==0)
    sum+=3;
if(strcmp(" 增加 四",str)==0)
    sum+=4;
if(strcmp(" 增加 五",str)==0)
    sum+=5;
if(strcmp(" 增加 六",str)==0)
    sum+=6;
if(strcmp(" 增加 七",str)==0)
    sum+=7;
if(strcmp(" 增加 八",str)==0)
    sum+=8;
if(strcmp(" 增加 九",str)==0)
    sum+=9;
if(strcmp(" 增加 十",str)==0)
    sum+=10;
}
void js(char str[]){
if(strcmp(" 减少 一",str)==0)
    sum-=1;
if(strcmp(" 减少 二",str)==0)
    sum-=2;
if(strcmp(" 减少 三",str)==0)
    sum-=3;
if(strcmp(" 减少 四",str)==0)
    sum-=4;
if(strcmp(" 减少 五",str)==0)
    sum-=5;
if(strcmp(" 减少 六",str)==0)
    sum-=6;
if(strcmp(" 减少 七",str)==0)
    sum-=7;
if(strcmp(" 减少 八",str)==0)
    sum-=8;
if(strcmp(" 减少 九",str)==0)
    sum-=9;
if(strcmp(" 减少 十",str)==0)
    sum-=10;
}
void bwz(int x){
if(x==0)
    printf("零");
if(x==1)
    printf("一");
if(x==2)
    printf("二");
if(x==3)
    printf("三");
if(x==4)
    printf("四");
if(x==5)
    printf("五");
if(x==6)
    printf("六");
if(x==7)
    printf("七");
if(x==8)
    printf("八");
if(x==9)
    printf("九");
if(x==10)
    printf("十");
}

int main() {
    int a1, a2;
    char a[100], b[100], c[100], d[100], e[100], f[100], g[100], h[100], j[100], k[100];
    scanf("%s %s %s %s %s %s %s %s %s %s %s", a, b, c, d, a, g, c, h, b, j, k);
    scanf("%s %s", f, g);
    scanf("看看",g);
}

posted @ 2020-02-09 21:48  zs7783  阅读(201)  评论(0编辑  收藏  举报