zoukankan      html  css  js  c++  java
  • 第一次个人编程作业

    这个作业属于哪个课程 软件工程 (福州大学至诚学院 - 计算机工程系)
    这个作业要求在哪里 第一次个人编程作业
    这个作业的目标 汉字编程
    作业正文 见下文
    其他参考文献 请教同学

    第一次个人编程作业

    编程题目

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

    编程要求

    请编写一个程序,满足以下语法要求:

    • 变量定义:整数 钱包 等于 零
    • 运算(加法):钱包 增加 四
    • 运算(减法):钱包 减少 四
    • 输出:看看 钱包 or 看看 “字符串”
      附加要求:
    • 选择:如果 钱包 大于 十 则 看看 “钱太多了” 否则 看看 “我穷死了”

    样例1

    输入:

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

    输出:


    你好,世界

    样例2

    输入:

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

    输出:

    记录

    • 代码行数:81
    • 需求分析时间:20min
    • 编码时间:4h+

    思路

    先读入一个c1,若c1=="看看",则读入一个c2,跳出循环;否则读入c2、c3,进行加减操作。
    然后再读入b1 - b10,输出去掉引号的子串。

    • 汉字转数字
    int zzs(char t[10]) 
    {
        if(strcmp(t,"零")==0){return 0;}
        if(strcmp(t,"一")==0){return 1;}
        if(strcmp(t,"二")==0){return 2;}
        if(strcmp(t,"三")==0){return 3;}
        if(strcmp(t,"四")==0){return 4;}
        if(strcmp(t,"五")==0){return 5;}
        if(strcmp(t,"六")==0){return 6;}
        if(strcmp(t,"七")==0){return 7;}
        if(strcmp(t,"八")==0){return 8;}
        if(strcmp(t,"九")==0){return 9;}
        if(strcmp(t,"十")==0){return 10;}
    }
    
    • 数字转汉字
    void szz(int t)
    {
        if(t==0){printf("零");} 
        if(t==1){printf("一");} 
        if(t==2){printf("二");} 
        if(t==3){printf("三");} 
        if(t==4){printf("四");} 
        if(t==5){printf("五");} 
        if(t==6){printf("六");} 
        if(t==7){printf("七");} 
        if(t==8){printf("八");} 
        if(t==9){printf("九");} 
        if(t==10){printf("十");}  
    }
    

    代码

    Github代码地址,持续更新中。

    #include<stdio.h>
    #include<string.h>
    
    int zzs(char t[10]) 
    {
    	if(strcmp(t,"零")==0){return 0;}
        if(strcmp(t,"一")==0){return 1;}
        if(strcmp(t,"二")==0){return 2;}
        if(strcmp(t,"三")==0){return 3;}
        if(strcmp(t,"四")==0){return 4;}
        if(strcmp(t,"五")==0){return 5;}
        if(strcmp(t,"六")==0){return 6;}
        if(strcmp(t,"七")==0){return 7;}
        if(strcmp(t,"八")==0){return 8;}
        if(strcmp(t,"九")==0){return 9;}
        if(strcmp(t,"十")==0){return 10;}
    }
    void szz(int t)
    {
        if(t==0){printf("零");} 
        if(t==1){printf("一");} 
        if(t==2){printf("二");} 
        if(t==3){printf("三");} 
        if(t==4){printf("四");} 
        if(t==5){printf("五");} 
        if(t==6){printf("六");} 
        if(t==7){printf("七");} 
        if(t==8){printf("八");} 
        if(t==9){printf("九");} 
        if(t==10){printf("十");}  
    }
    
    int main()
        {
        char a1[100],a2[100],a3[100],a4[100];
    	scanf("%s %s %s %s",a1,a2,a3,a4);
        char b1[100],b2[100],b3[100],b4[100],b5[100],b6[100],b7[100],b8[100],b9[100],b10[100];
        char c1[100],c2[100],c3[100];
        int d=0,d1=0,d2=0,d3=0;
    	int e;
        int zzs(char t[10]);
        void szz(int t); 
        d1=zzs(a4);
        d=d+d1;
        for(;;)
        {
        	scanf("%s", c1);
        	if (strcmp(c1,"看看")) {
        		scanf(" %s %s", c2,c3);
        		if(strcmp(c2,"减少")==0) {
    			    d2=zzs(c3);
    			    d=d-d2;
    			} else if (strcmp(c2,"增加")==0) {   
    				d3=zzs(c3);
    	            d=d+d3;
    			}
        		
    		} else {
    			scanf(" %s", c2);
    			break;
    		}      
        } 
        scanf("%s %s %s %s %s %s %s %s %s %s",b1,b2,b3,b4,b5,b6,b7,b8,b9,b10);
    	e=zzs(b4);
        szz(d);
        printf("
    ");
        int len1=strlen(b7);
        int len2=strlen(b10); 
        if(d>e)
            for (int i=1;i<len1-1; i=i+2) 
            {
                
                printf("%c%c",b7[i],b7[i+1]);
            }
        else
            for (int i=1;i<len2-1;i=i+2) 
            {
            
                printf("%c%c",b10[i],b10[i+1]);
            }
    }
    
    

    总结

    能力有限,目前只能做出这样的程序。该程序也存在着很多不足的地方,希望在后面的学习中能够得以改善,学到更多东西。

  • 相关阅读:
    美赛 LaTeX 急救指南
    切比雪夫定理的证明
    【持续更新】一个简洁、易用的美赛 LaTeX 模板: easymcm
    一个形式较精细的 Strling 公式的证明
    数学分析的主线,高等数学的一切:连续函数与“有理”分析
    一个自己稍作修改了的美赛论文 LaTeX 模板
    有关几个特殊命题的证明
    实数系与实数定理(下)
    实数系与实数定理(上)
    Office365完整离线安装包下载及自定义安装教程
  • 原文地址:https://www.cnblogs.com/pigpig922/p/12288735.html
Copyright © 2011-2022 走看看