面向对象程序设计寒假作业1

作业1
这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/2020OOP
这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/2020OOP/homework/10224
这个作业的目标 1.安装C++开发环境(见附录)。2.完成问答题、实践题及编程题。3.发布博客。
作业正文 1.问答题 2.实践题 3.编程题
其他参考文献 见下方
(我发现我不太会贴图片。。。)
问答题:(基础3分)

回答以下问题:

一.如果你不了解C++请回答以下问题:你认为C语言有什么缺陷(你觉得哪里用的不顺手)。
如果你已经了解C++请回答以下问题:你觉得C++和C语言比有什么优点。
——————————————————————————————————————————————————————————
答:我不是非常了解C++,
我认为C语言的用的不顺手的地方或者我学不好的地方
1.C语言的一些2维数组或者字符数组以及链表我学习的不太顺
2.我记不太熟字符的优先级
3.函数的嵌套,我不太会用,所以常常用循环替代(我要继续努力)
二.查阅相关资料,简述一下C语言/C++的编译过程
————————————————————————————————————————————————————
gcc命令其实依次执行了四步操作:1.预处理(Preprocessing), 2.编译(Compilation), 3.汇编(Assemble), 4.链接(Linking)。
资料:https://www.cnblogs.com/knife-king/p/11090029.html


实践题:(基础2分)

自己动手,完成以下任务:

查看自己的C++编译器版本。

使用命令行编译一份C语言/C++代码。


中国文化博大精深,从仓颉造字开始,汉字一直流传到了今天。我们在感叹汉字的源远流长时,也不禁感慨,为什么没有一门使用汉字编程的语言?
汉字真的不能编程吗?最近文言文编程火了一把,吾有一數。曰三。名之曰「甲」。这朴实无华的变量定义无疑不是几千年来中华文化的发展中一朵奇葩。
今天小王同学想,文言文能编程那白话文呢?他找到了你,让你帮帮他。

编程要求
编写一个程序,输入满足以下语法要求的一段文字,输出运行后的结果。
变量定义:整数 钱包 等于 零
运算(加法):钱包 增加 四
运算(减法):钱包 减少 四
输出:看看 钱包

样例
输入:

整数 钱包 等于 零
钱包 增加 四
钱包 减少 三
看看 钱包

输出:

注意:
输入输出用例均为GBK编码,推荐使用vscode把文本切换为GBK编码。
数字只会出现以下 零一二三四五六七八九十 。
——————————————————————————————————————————————
这个题目我是用C语言写的,我想大概是要先把汉字转换成数字(运用函数),数字转换成汉字(运用函数和switch),再定义一个加减的函数,来完成。
strcmp函数可以进行运用
——————————————————————————————————————————————

include <stdio.h>

include <string.h>

int main()
{
int hangzi(char m[20]);
void shuzi(int sum);
int sum;
char a[20], b[20], n[20], m[20],t[20],f[20],g[20],h[20];
scanf("%s %s %s %s %s",a,b,n,m,t);
if (strcmp("整数", a) == 0 && strcmp("钱包", b) == 0 && strcmp("等于", n) == 0)
sum = hangzi(m);
for(;strcmp("钱包", t) == 0;)
{
scanf("%s %s", f, g);
if (strcmp("增加", f) == 0)
sum +=hangzi(g);
else
{
sum -=hangzi(g);
}
scanf("%s", t);
}
if (strcmp("看看", t) == 0)
{
scanf("%s", h);
if (strcmp("钱包", h) == 0)
shuzi(sum);
}
}
void shuzi(int sum)
{
switch (sum)
{
case 0:printf("零"); break;
case 1:printf("一"); break;
case 2:printf("二"); break;
case 3:printf("三"); break;
case 4:printf("四"); break;
case 5:printf("五"); break;
case 6:printf("六"); break;
case 7:printf("七"); break;
case 8:printf("八"); break;
case 9:printf("九"); break;
case 10:printf("十"); break;
case 11:printf("一十一"); break;
case 12:printf("一十二"); break;
case 13:printf("一十三"); break;
case 14:printf("一十四"); break;
case 15:printf("一十五"); break;
case 16:printf("一十六"); break;
case 17:printf("一十七"); break;
case 18:printf("一十八"); break;
case 19:printf("一十九"); break;
case 20:printf("二十"); break;
case 21: printf("二十一"); break;
case 22: printf("二十二"); break;
case 23: printf("二十三"); break;
case 24: printf("二十四"); break;
case 25: printf("二十五"); break;
case 26: printf("二十六"); break;
case 27: printf("二十七"); break;
case 28: printf("二十八"); break;
case 29: printf("二十九"); break;
case 30: printf("三十"); break;
case 31: printf("三十一"); break;
case 32: printf("三十二"); break;
case 33: printf("三十三"); break;
case 34: printf("三十四"); break;
case 35: printf("三十五"); break;
case 36: printf("三十六"); break;
case 37: printf("三十七"); break;
case 38: printf("三十八"); break;
case 39: printf("三十九"); break;
case 40: printf("四十"); break;
}
}
int hangzi(char m[])
{
int c;
if (strcmp("零", m) == 0)
c = 0;
if (strcmp("一", m) == 0)
c = 1;
if (strcmp("二", m) == 0)
c = 2;
if (strcmp("三", m) == 0)
c = 3;
if (strcmp("四", m) == 0)
c = 4;
if (strcmp("五", m) == 0)
c = 5;
if (strcmp("六", m) == 0)
c = 6;
if (strcmp("七", m) == 0)
c = 7;
if (strcmp("八", m) == 0)
c = 8;
if (strcmp("九", m) == 0)
c = 9;
if (strcmp("十", m) == 0)
c = 10;
if (strcmp("十一", m) == 0)
c = 11;
if (strcmp("十二", m) == 0)
c = 12;
if (strcmp("十三", m) == 0)
c = 13;
if (strcmp("十四", m) == 0)
c = 14;
if (strcmp("十五", m) == 0)
c = 15;
if (strcmp("十六", m) == 0)
c = 16;
if (strcmp("十七", m) == 0)
c = 17;
if (strcmp("十八", m) == 0)
c = 18;
if (strcmp("十九", m) == 0)
c = 19;
if (strcmp("二十", m) == 0)
c = 20;
return (c);
}

posted @ 2020-01-27 23:36  小偶  阅读(186)  评论(0编辑  收藏  举报