说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

分支结构程序-C语言教程

HTML文档下载 WORD文档下载 PDF文档下载
关系运算符和表达式:在程序中经常需要比较两个量的大小关系,以决定程序下一步的工作。比较两个量的运算符称为关系运算符。

 

5.1 关系运算符和表达式

在程序中经常需要比较两个量的大小关系,以决定程序下一步的工作。比较两个量的运算符称为关系运算符。 

5.1.1 关系运算符及其优先次序

在C语言中有以下关系运算符:

1) <   小于

2) <=  小于或等于 

3) >   大于

4) >=  大于或等于

5) ==  等于

6) !=  不等于

关系运算符都是双目运算符,其结合性均为左结合。关系运算符的优先级低于算术运算符,高于赋值运算符。 在六个关系运算符中,<,<=,>,>=的优先级相同,高于==和!=,==和!=的优先级相同。

5.1.2 关系表达式

关系表达式的一般形式为:

    表达式 关系运算符  表达式

例如:

a+b>c-d

x>3/2

‘a’+1<c

-i-5*j==k+1

都是合法的关系表达式。由于表达式也可以又是关系表达式。 因此也允许出现嵌套的情况。例如:

a>(b>c)

a!=(c==d)

等。

关系表达式的值是真”和“假”,用“1”和“0”表示。

如:

  5>0的值为“真”,即为1。

(a=3)>(b=5)由于3>5不成立,故其值为假,即为0。

【例5.1】

 

main(){  char c='k';  int i=1,j=2,k=3;  float x=3e+5,y=0.85;  printf("%d,%d\n",’a’+5<c,-i-2*j>=k+1);  printf("%d,%d\n",1<j<5,x-5.25<=x+y);  printf("%d,%d\n",i+j+k==-2*j,k==j==i+5); }

在本例中求出了各种关系运算符的值。字符变量是以它对应的ASCII码参与运算的。对于含多个关系运算符的表达式,如k==j==i+5,根据运算符的左结合性,先计算k==j,该式不成立,其值为0,再计算0==i+5,也不成立,故表达式值为0。

5.2 逻辑运算符和表达式

5.2.1 逻辑运算符极其优先次序

C语言中提供了三种逻辑运算符:

1) &&  与运算

2) ||  或运算

3) !   非运算

与运算符&&和或运算符||均为双目运算符。具有左结合性。非运算符!为单目运算符,具有右结合性。逻辑运算符和其它运算符优先级的关系可表示如下:

!(非)→&&(与)→||(或)

“&&”和“||”低于关系运算符,“!”高于算术运算符。

 

按照运算符的优先顺序可以得出:

a>b && c>d   等价于    (a>b)&&(c>d)

           !b==c||d<a    等价于    ((!b)==c)||(d<a)

           a+b>c&&x+y<b  等价于    ((a+b)>c)&&((x+y)<b)

5.2.2 逻辑运算的值

逻辑运算的值也为“真”和“假”两种,用“1”和“0 ”来表示。其求值规则如下:

1. 与运算 &&:参与运算的两个量都为真时,结果才为真,否则为假。

例如:

5>0 && 4>2

由于5>0为真,4>2也为真,相与的结果也为真。

2. 或运算||:参与运算的两个量只要有一个为真,结果就为真。 两个量都为假时,结果为假。

例如:

5>0||5>8

由于5>0为真,相或的结果也就为真。

3. 非运算!:参与运算量为真时,结果为假;参与运算量为假时,结果为真。

例如:

!(5>0)

的结果为假。

虽然C编译在给出逻辑运算值时,以“1”代表“真”,“0 ”代表“假”。 但反过来在判断一个量是为“真”还是为“假”时,以“0”代表“假”,以非“0”的数值作为“真”。例如:

由于5和3均为非“0”因此5&&3的值为“真”,即为1。

又如:

5||0的值为“真”,即为1。

5.2.3 逻辑表达式

逻辑表达式的一般形式为:

    表达式  逻辑运算符  表达式

其中的表达式可以又是逻辑表达式,从而组成了嵌套的情形。

例如:

    (a&&b)&&c

根据逻辑运算符的左结合性,上式也可写为:

    a&&b&&c

逻辑表达式的值是式中各种逻辑运算的最后值,以“1”和“0”分别代表“真”和“假”。

【例5.2】

 

main(){    char c='k';    int i=1,j=2,k=3;    float x=3e+5,y=0.85;    printf("%d,%d\n",!x*!y,!!!x);    printf("%d,%d\n",x||i&&j-3,i<j&&x<y);    printf("%d,%d\n",i==5&&c&&(j=8),x+y||i+j+k);}

本例中!x和!y分别为0,!x*!y也为0,故其输出值为0。由于x为非0,故!!!x的逻辑值为0。对x|| i && j-3式,先计算j-3的值为非0,再求i && j-3的逻辑值为1,故x||i&&j-3的逻辑值为 1。对i<j&&x<y式,由于i<j的值为1,而x<y为0故表达式的值为1,0相与,最后为0,对i==5&&c&&(j=8)式,由于i==5为假,即值为0,该表达式由两个与运算组成,所以整个表达式的值为0。对于式x+ y||i+j+k由于x+y的值为非0,故整个或表达式的值为1。

5.3 if语句

用if语句可以构成分支结构。它根据给定的条件进行判断,以决定执行某个分支程序段。C语言的if语句有三种基本形式。

5.3.1 if语句的三种形式

1. 第一种形式为基本形式:if

    if(表达式) 语句

其语义是:如果表达式的值为真,则执行其后的语句, 否则不执行该语句。其过程可表示为下图。

 

【例5.3】

 

main(){    int a,b,max;    printf("\n input two numbers:   ");    scanf("%d%d",&a,&b);    max=a;    if (max<b) max=b;    printf("max=%d",max);}

    本例程序中,输入两个数a,b。把a先赋予变量max,再用if语句判别max和b的大小,如max小于b,则把b赋予max。因此max中总是大数,最后输出max的值。

2. 第二种形式为: if-else

if(表达式)  

          语句1;  

        else  

          语句2;

   其语义是:如果表达式的值为真,则执行语句1,否则执行语句2 。

其执行过程可表示为下图。

 

 

【例5.4】

 

main(){    int a, b;    printf("input two numbers:     ");    scanf("%d%d",&a,&b);    if(a>b)      printf("max=%d\n",a);    else      printf("max=%d\n",b);}

    输入两个整数,输出其中的大数。

改用if-else语句判别a,b的大小,若a大,则输出a,否则输出b。

3. 第三种形式为if-else-if形式

前二种形式的if语句一般都用于两个分支的情况。 当有多个分支选择时,可采用if-else-if语句,其一般形式为:

if(表达式1)

        语句1;

    else  if(表达式2)  

        语句2;

    else  if(表达式3)  

        语句3;

        …  

    else  if(表达式m)  

        语句m;

    else 

        语句n;

其语义是:依次判断表达式的值,当出现某个值为真时,则执行其对应的语句。然后跳到整个if语句之外继续执行程序。 如果所有的表达式均为假,则执行语句n。然后继续执行后续程序。 if-else-if语句的执行过程如图3—3所示。

 

【例5.5】

 

#include"stdio.h"main(){    char c;    printf("input a character:    ");    c=getchar();    if(c<32)      printf("This is a control character\n");    else if(c>='0'&&c<='9')      printf("This is a digit\n");    else if(c>='A'&&c<='Z')      printf("This is a capital letter\n");    else if(c>='a'&&c<='z')      printf("This is a small letter\n");    else      printf("This is an other character\n");}

    本例要求判别键盘输入字符的类别。可以根据输入字符的ASCII码来判别类型。由ASCII码表可知ASCII值小于32的为控制字符。 在“0”和“9”之间的为数字,在“A”和“Z”之间为大写字母, 在“a”和“z”之间为小写字母,其余则为其它字符。 这是一个多分

支选择的问题,用if-else-if语句编程,判断输入字符ASCII码所在的范围,分别给出不同的输出。例如输入为“g”,输出显示它为小写字符。

4. 在使用if语句中还应注意以下问题:

1) 在三种形式的if语句中,在if关键字之后均为表达式。 该表达式通常是逻辑表达式或关系表达式, 但也可以是其它表达式,如赋值表达式等,甚至也可以是一个变量。

例如:

    if(a=5) 语句;

if(b) 语句;

都是允许的。只要表达式的值为非0,即为“真”。

如在:

if(a=5)…;

中表达式的值永远为非0,所以其后的语句总是要执行的,当然这种情况在程序中不一定会出现,但在语法上是合法的。

又如,有程序段:

    if(a=b)

                 printf("%d",a);

              else

                 printf("a=0");

本语句的语义是,把b值赋予a,如为非0则输出该值,否则输出“a=0”字符串。这种用法在程序中是经常出现的。

2) 在if语句中,条件判断表达式必须用括号括起来,在语句之后必须加分号。

3) 在if语句的三种形式中,所有的语句应为单个语句,如果要想在满足条件时执行一组(多个)语句,则必须把这一组语句用{}括起来组成一个复合语句。但要注意的是在}之后不能再加分号。

例如:

    if(a>b)

{a++;

           b++;}

else

{a=0;

      b=10;}

5.3.2 if语句的嵌套

当if语句中的执行语句又是if语句时,则构成了if 语句嵌套的情形。

其一般形式可表示如下:

    if(表达式)  

        if语句;  

或者为

        if(表达式)  

           if语句;  

        else  

           if语句;

在嵌套内的if语句可能又是if-else型的,这将会出现多个if和多个else重叠的情况,这时要特别注意if和else的配对问题。

例如:

    if(表达式1)

        if(表达式2)

            语句1;

        else

语句2;

其中的else究竟是与哪一个if配对呢?

应该理解为:

   if(表达式1)

        if(表达式2)

           语句1;

      else

      语句2;

还是应理解为:

    if(表达式1)

        if(表达式2)

            语句1;

    else

   语句2;

为了避免这种二义性,C语言规定,else 总是与它前面最近的if配对,因此对上述例子应按前一种情况理解。

【例5.6】

 

main(){    int a,b;    printf("please input A,B:    ");    scanf("%d%d",&a,&b);    if(a!=b)    if(a>b)  printf("A>B\n");    else     printf("A<B\n");    else     printf("A=B\n");}

    比较两个数的大小关系。

    本例中用了if语句的嵌套结构。采用嵌套结构实质上是为了进行多分支选择,实际上有三种选择即A>B、A<B或A=B。这种问题用if-else-if语句也可以完成。而且程序更加清晰。因此,在一般情况下较少使用if语句的嵌套结构。以使程序更便于阅读理解。

【例5.7】

 

main(){    int a,b;    printf("please input A,B:      ");    scanf("%d%d",&a,&b);    if(a==b) printf("A=B\n");    else if(a>b)  printf("A>B\n");    else  printf("A<B\n");}

5.3.3 条件运算符和条件表达式

    如果在条件语句中,只执行单个的赋值语句时, 常可使用条件表达式来实现。不但使程序简洁,也提高了运行效率。

条件运算符为?和:,它是一个三目运算符,即有三个参与运算的量。

由条件运算符组成条件表达式的一般形式为:

    表达式1?  表达式2: 表达式3

其求值规则为:如果表达式1的值为真,则以表达式2 的值作为条件表达式的值,否则以表达式2的值作为整个条件表达式的值。

条件表达式通常用于赋值语句之中。

例如条件语句:

    if(a>b)  max=a;

        else max=b;

可用条件表达式写为

    max=(a>b)?a:b;

执行该语句的语义是:如a>b为真,则把a赋予max,否则把b 赋予max。

使用条件表达式时,还应注意以下几点:

1) 条件运算符的运算优先级低于关系运算符和算术运算符,但高于赋值符。

因此

    max=(a>b)?a:b

可以去掉括号而写为

    max=a>b?a:b

2) 条件运算符?和:是一对运算符,不能分开单独使用。

3) 条件运算符的结合方向是自右至左。

例如:

a>b?a:c>d?c:d

应理解为

a>b?a:(c>d?c:d)

这也就是条件表达式嵌套的情形,即其中的表达式3又是一个条件表达式。

【例5.8】

 

main(){    int a,b,max;    printf("\n input two numbers:   ");    scanf("%d%d",&a,&b);    printf("max=%d",a>b?a:b);}

用条件表达式对上例重新编程,输出两个数中的大数。

5.4 switch语句

C语言还提供了另一种用于多分支选择的switch语句, 其一般形式为:

    switch(表达式){  

        case常量表达式1:  语句1;

        case常量表达式2:  语句2;

        …  

        case常量表达式n:  语句n;

        default        :  语句n+1;

        }

    其语义是:计算表达式的值。 并逐个与其后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时, 即执行其后的语句,然后不再进行判断,继续执行后面所有case后的语句。如表达式的值与所有case后的常量表达式均不相同时,则执行default后

的语句。

【例4.9】

 

main(){    int a;    printf("input integer number:      ");    scanf("%d",&a);    switch (a){ 	case 1:printf("Monday\n");	case 2:printf("Tuesday\n");	case 3:printf("Wednesday\n");	case 4:printf("Thursday\n");	case 5:printf("Friday\n");	case 6:printf("Saturday\n");	case 7:printf("Sunday\n");	default:printf("error\n");    }}

本程序是要求输入一个数字,输出一个英文单词。但是当输入3之后,却执行了case3以及以后的所有语句,输出了Wednesday 及以后的所有单词。这当然是不希望的。为什么会出现这种情况呢?这恰恰反应了switch语句的一个特点。在switch语句中,“case 常量表达式”只相当于一个语句标号, 表达式的值和某标号相等则转向该标号执行,但不能在执行完该标号的语句后自动跳出整个switch 语句,所以出现了继续执行所有后面case语句的情况。 这是与前面介绍的if语句完全不同的,应特别注意。为了避免上述情况,C语言还提供了一种break语句,专用于跳出switch语句,break 语句只有关键字break,没有参数。在后面还将详细介绍。修改例题的程序,在每一case语句之后增加break 语句, 使每一次执行之后均可跳出switch语句,从而避免输出不应有的结果。

【例4.10】

 

main(){    int a;    printf("input integer number:    ");    scanf("%d",&a);    switch (a){      case 1:printf("Monday\n");break;      case 2:printf("Tuesday\n"); break;      case 3:printf("Wednesday\n");break;      case 4:printf("Thursday\n");break;      case 5:printf("Friday\n");break;      case 6:printf("Saturday\n");break;      case 7:printf("Sunday\n");break;      default:printf("error\n");    }}

在使用switch语句时还应注意以下几点:

1) 在case后的各常量表达式的值不能相同,否则会出现错误。

2) 在case后,允许有多个语句,可以不用{}括起来。

3) 各case和default子句的先后顺序可以变动,而不会影响程序执行结果。

4) default子句可以省略不用。

5.5 程序举例

【例4.11】输入三个整数,输出最大数和最小数。

 

main(){    int a,b,c,max,min;    printf("input three numbers:    ");    scanf("%d%d%d",&a,&b,&c);    if(a>b)      {max=a;min=b;}    else      {max=b;min=a;}    if(max<c)      max=c;    else      if(min>c)	min=c;    printf("max=%d\nmin=%d",max,min);}

本程序中,首先比较输入的a,b的大小,并把大数装入max,小数装入min中,然后再与c比较,若max小于c,则把c赋予max;如果c小于min,则把c赋予min。因此max内总是最大数,而min内总是最小数。最后输出max和min的值即可。

【例4.12】计算器程序。用户输入运算数和四则运算符,输出计算结果。

 

main(){    float a,b;    char c;    printf("input expression: a+(-,*,/)b \n");    scanf("%f%c%f",&a,&c,&b);    switch(c){       case '+': printf("%f\n",a+b);break;       case '-': printf("%f\n",a-b);break;       case '*': printf("%f\n",a*b);break;       case '/': printf("%f\n",a/b);break;       default: printf("input error\n");    }}

 

    本例可用于四则运算求值。switch语句用于判断运算符,然后输出运算值。当输入运算符不是+,-,*,/时给出错误提示。

 

新浪管理层调整 许良杰任CTO兼联席总裁 Java,你还会让多少人继续“受伤”? 中国或超美国 成全球智能设备市场霸主 告别手写 API文档生成工具推荐 微软Azure超越亚马逊云计算的性能测试 苹果创新已经被三星超越 不靠广告也盈利:移动应用掘金7大案例剖析 谈Clash of Clans货币化的成功 UX设计师应当规避的七大问题 初创公司Citus Data将CitusDB扩展到Hadoop 移动医疗:巢儿孵化器为何笃信是创业金矿? 一个新的雅虎:雅虎主页改版 谷歌发布Google Glass最新视频 公开接受预定 微软Windows Blue结束半程开发 或今年8月推出 JavaFX即将开源,支持iOS与Android开发 趣味编程网Codecademy携手Twitter、Evernote、Box等推出系列API教程 开发者,别让任何人绑架你的工作节奏 REST Style来袭 LinkedIn开源Rest.li框架 [探讨] 是用jQuery框架还是自造车轮呢? 一周消息树:Java 你还会让多少人继续“受伤”? Chromebook Pixel,揭开谷歌云世界的大幕 惠普:第一财季净利12亿 同比仍在下滑 谷歌发布超高清触屏笔记本Chromebook Pixel 传谷歌正开发触屏Chrome OS笔记本 今年或上市 估值25亿 视觉社交网站Pinterest融资2亿美元 跨平台开发框架Xamarin 2.0发布 移动新趋势:扁平化设计 vs. 拟物化设计(上篇) 杂谈 App Store 之 HIG 与 Objective-C 为什么苹果三星将主宰智能电视未来? 罗永浩可爱多:Smartisan OS即将发布 春晚 VS. 移动应用:用户注意力统计报告 备份数据库时出现42000错误:"d:\backup\20021115.mdfIO"发生不要恢复错误,backup被中止,救命啊,谢谢!!! An very easy problem! vb.net简单的问题。 怎么用Linux 下的C/C++开发一个窗口,人人有分! delphi7怎么注册? 请问:VB中如何实现Crystal Report打印? VB可以使用MySQL数据库吗? libc stdio中fgets的疑问! 还是文档拷贝问题,原文档中的RTF域怎么拷贝到另一数据库中的新文档中。 请估价开发一个b/s结构的桥牌网站 关于名字空间namespace.散分了!! 文件上传,急!! 初学者问题之数据库连接--有点急 http://CDNA.8q8.net/受到黑客攻击,请发表意见 兄弟们,请问在win2k下,怎么实现在exe文件加上自己的一段代码,给点思路? “好的” 接分! 有关闭包问题,在线求解! 如何在Datagrid中实现交叉表? 我想请问一下,在SQL_SERVER中,可不可以发送URL啊,可以的话怎么写法?谢谢! VB 编程发 Lotus Notes 邮件。(200分) 请问使用sql2000 for jdbc连接sql7的问题 请估价一个bs结构的桥牌游戏网站 IIS以及SSL代理的简单问题!急急急急!来者有分!!! 如何把24和32位图的文件保存为2色位图? 请问一下用winsock怎样绑定两块网卡? 请估价一个bs结构的桥牌游戏网站。 如何在win2000/xp上限制内网用户上网的带宽? 硬盘不知是什么问题! 如何用asp创建exchange用户邮箱地址: 一个人在北京好孤独。 如何知道 DataGrid水平滚动条的位置(值) Servlet/JSP可以使用Local Interface么? 请问哪里能下载到一些asp编写的趣味小程序~(例如猜数字之类的) 第一期:Flash文字特效 急问:如何在C++ Builder中动态添加控件????? session是什么 (紧急)请问,我写了一个 delete 语句,写完才发现错了,请问,可以恢复我的数据吗? form上面有一个按钮,引发绘图,当我隐藏该页面后,画的图消失了,又要从新激发该事件,怎么保持图不改变 有没有免费的全文搜索引擎? 我要是写一套ejb在weblogic和jboss两种server下运行可以吗? 那位知道如何仅用api把一个窗口做得和MessageBox一样? 谢谢!! .net会应用广泛吗? 请问jboss下如何在根路径显示出http://localhost:8080/image.jpg? 在php中如何使文本框只输入数字? 有什么网站专门是谈C#的? 谁有effective stl或者关于stl的资料? 如何给ACCESS数据库添加PASSWORD? 很久没有问问题了,问上两个小问题吧,呵呵 那里有《unix编程环境》的电子书呀?(内空) 我达到五个三角,高兴,并多谢black_snail,散分 我有一个程序,没用项目时(就是写在一个文件中)是可以的,用项目写的就提示错误: 在细纱工序中,油污纱产生的原因 插装阀的通径是什么意思 作文:我的心事我知道500字以上, AB有相同的特征值,则AB相似? free的形容词和名词是什么 要英文,把名字和职业空着. 如何背?指什么国家呢? 七年级下册英语作文(unit11 how was your school trip?)假如你是简,昨天外出去郊游,请给你的朋友珍妮写一封电子邮件,描述你的这次郊游,70词左右 职业名称(带英语翻译) 根据3:9=6:18回答((1)如果外项18减去6,内项9怎么变化,比例仍然成立?(2)如果把内项6乘2,内项9换成那个数,比例仍然成立? 各位zippo打火机这图案什么意思 多肉植物景天科都分哪些属? ()之6=9分之18=()之28 求解答 zippo打火机的h和f的含义是什么 伊贝莎这个名字如果翻译成英文名该怎么写? V开头的英文名 女 最好是Vi开头. 英语题第6题VI 晨旭这个名字的含义是什么 vi开头的英文名如题(男) 什么是三煞 三煞是什么意思我家想在2014年6月16日搬家 我家新家的方向在南边 单元楼也是坐南朝南开门 我家房门是朝西开 请问这一天的三煞在哪儿 是否适合我们搬家 各种职业名称用英语写duombyuvvapxz怎么办呢? VI设计英文名哪位哥哥姐姐懂行的 帮下小弟取下 英文名,中文名是〈华尔顿〉 要求要有VI效果VI是视觉效果的意思,不要误解成取个VI开头的英文名字,呵呵.我做服装 打算把 华尔顿 注册下来,然 天劫、地煞 运势里面的天劫、地煞 写出30个职业名称!(用英文写)拜托了各位 Vi可以为英文名吗因为我中文名有个“伟”字。所以问哈 也请朋友帮帮忙、 琉璃美人煞中的煞是什么意思 根据英文解释写出职业名称(要快!)1.person who designs,builds or controls machines.2.person who operates the control of an aircraft3.person who writes programs for a computer4.person who practises any of the fine arts,especially painti "just one last dance ,before we say 黄历冲鸡煞西.煞是什么意思 英语翻译 Just one last dance,before we say good bye.是哪首歌里面的歌词? a.表示什么词性书上这样写 fog(a.)---foggy truth(a.)---true deeply(n.)---depth deadly(n.)---deathvolunteer(v.)---volunteer deserted(v.)---desertstressed(v./n.)---stress 这写a.v.n.后面的单词又是什么词性? 已知等腰三角形的底边等于a,底边上的高等于b,你能用尺规作图的方法作出这个等腰三角形吗? 帮我翻译:just one last dance .before we say goodbye`` 通()()径四字词语或成语 已知底边及底边上的高,求作等腰三角形 英语翻译just one last before we say goodbye 我还从“-------------,-------------.”这句诗中明白了------------------的道理 已知一个等腰三角形的底边及底边上的高,求作这个等腰三角形求图 go/you/do/your/holidays/where/for/?/怎么连词成句 谁知道 在你身上已经万年我的心事全被你看见 是哪个歌的词 已知等腰三角形底边上的高等于底边的一半,腰长为根号5,求底边的长? AB纱里边一般都是什么成分 (连词成句) (1)your where is school (2)next t(连词成句)(1)your where is school (2)next to our school is the library .(3)I can How get to the school (4)go can You by No.1 bus .(5)is not our The library far from school . 有人说我命犯桃花. 么意思 ?来个专家解释下? 八年级上册英语作文40页 9题的文章翻译 通径长是什么?椭圆与双曲线的通径长有什么不同? 小的时候 有个算命的说我 ...什么什么的一大堆,不过后来说"命犯桃花"这个是什么意思?后来在有些书上也看到过,这个词 不是说男的么,难道对女的也这么说? 什么叫机织纱 数学里的通径指的是什么? 本人是农历1986年12月27日凌晨3-5点出生.也算是虎年虎时辰出生吧请问我是不是真的命犯桃花以前听个人说我.不要和女人走的太近容易怎么着怎么着.意思就是不好的意思,现在想想也许是吧 请 考前激励人上进的现代名言速度啊!一定记住是考前、、 请问命里犯煞的意思是什么?男人属鸡的十月犯铁扫和孤辰的意思是什么?男人属狗八月生犯六厄,男人1981年阴历10月,晚上7点20生.犯铁扫和孤辰的意思是什么?男人1982年阴历8月早上10点30分生的 两个算命先生都说了同样的话,说我命犯桃花,女生。好害怕说地不好! 17和18题这种类型题目要怎么做 具体过程谢谢 〖激励自己上进的名言】→?多给点``多给点``谢` 和衷语文古诗一般默几句,还是就名句,明天就考了, 有本事吧过程写出来,17和18,谢谢,万分感谢. 10通径是什么意思 以我的心事我知道写作文
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘