菜鸟有关C语言的两道题

作者&投稿:霜阎 (若有异议请与网页底部的电邮联系)
两道c语言题,C语言新手~

#include "stdio.h" void main() { char s; int i=0,j=0,k=0,m=0,da=0,xiao=0; printf("please input the string
"); while((s=getchar())!='
') /*循环从键盘读入字符直到一行结束(输入回车)*/ { if((s='a')||(s'A')) { if(s='A')da++; if(s='a')xiao++; i++; /*i存入字母数*/ } else if(s==' ') j++; /*j存入空格数,注意s==' '里面是有一个空格的*/ else if(s47)k++; /*k存入数字数*/ else m++; /*m存入其它符号数*/ } printf("char:%d Capital letters:%d Lowercase%d
spec:%d
number:%d
Other:%d
",i,da,xiao,j,k,m); /*打印行中的字母,空格,数字,其它字符数*/ }

#include
#include
#include

int main(void)
{
char password[32];
int i=3;
do{
printf("请输入密码:(还有%d次机会)",i);
scanf("%s",&password);
if(0==strcmp(password,"123"))
{
printf("密码输入正确!
");
break;
}
else
{
printf("密码输入错误,请重新输入!
");
i--;
}
}while(i>0);
getch();
return 0;
}

第一个是5
一开始定义p指向m,p=m[0] *p=0
然后p向右移动4位变成 p=m[4] *p=4
然后printf里面又是++p p=m[5] *p=5
第二个是EFGH
IJKL
因为w[0]="ABCD"
w[1]="EFGH"
w[2]="IJKL"
w[3]="MNOP
让k=1 输出EFGH
然后循环 k=2 输出IJKL
然后k=3 不满足k<3 跳出循环

1.第一个程序正确的输出是字母B后面加一个黑桃,不是你那个答案。
解释:66的ASCII码为字母B,247的ASCII码越界不存在,6的ASCII码为黑桃。
2.第二个程序输出答案如下:
7,7,7
1,3,5,7,10,11.
解释:*p=a+3,即将指针指到a[3],此时*p=7.又由于自增运算符与*的优先级一样的,但是运算顺序是从右至左,所以*p++与*(p++)等效。
所以第一个输出语句中*p++=7,(*p)++=7,*p=7.
第二个输出语句中,注意到p=a,即将指针从新指向a[0],此时有*p=1.
因此很好理解了,这是一个循环输出语句,条件是p<=a[5],即此循环的作用是将整个数组输出。
PS:楼主如果还有什么问题,请补充下,我还会再次来帮你解决问题的呵呵。
希望这次回答对楼主有帮助。

第一题
我运行了 书上的答案不对
输出的是“B 空格 红桃”(中间没有空格,为了让你看清楚加上的)
我试了一下 ASCLL 码在128以后的字符都不能输出,我也不知道为什么,有时间我问问老师,之后再告诉你 理论上putchar(247)执行后应该得到约等号,因为约等号对应的ASCLL码是247,可是不能输出,很遗憾
第二题
我运行了,执行结果为
7,7,7
1,3,5,7,10,11


菜鸟有关C语言的两道题
1.第一个程序正确的输出是字母B后面加一个黑桃,不是你那个答案。解释:66的ASCII码为字母B,247的ASCII码越界不存在,6的ASCII码为黑桃。2.第二个程序输出答案如下:7,7,7 1,3,5,7,10,11.解释:*p=a+3,即将指针指到a[3],此时*p=7.又由于自增运算符与*的优先级一样的,但是运算...

C语言菜鸟 有两道C语言题 求大神赐教答案并详细说明原因 十分感谢_百度...
第二个是EFGH IJKL 因为w[0]="ABCD"w[1]="EFGH"w[2]="IJKL"w[3]="MNOP 让k=1 输出EFGH 然后循环 k=2 输出IJKL 然后k=3 不满足k<3 跳出循环

c语言编程(小鸟)问题 100分求解答在线等
for (j=0;j<2*(3-i);j++)printf(" ");printf("\/");for (j=0;j<2*i;j++)printf(" ");printf("\\\\");printf("\\n");for (n=0;n<5*h;n++) printf(" ");} 这个是鸟的输出。主要是每一行的输出,还要输出 for (n=0;n<5*h;n++) printf(" ");下一行前面的空格,就...

c语言游戏编程,下落的小鸟 求代码
Bird->y - 1); printf(" ");Position(Bird->x, Bird->y); printf("Ю");Position(38, 2); printf("Score:%d", Score);}void Loop_Bg(Bg *q) \/\/障碍物x坐标左移,并

谁能提供点C语言的试题给我,最好能有答案的,非常感谢!
以下是一些 C 语言的试题,每个试题都附带有答案。希望能够帮助到你。1、编写一个程序,从命令行参数中读取两个整数,计算它们的和并输出结果。答案:include <stdio.h> int main(int argc, char *argv[]) {if (argc != 3) {printf("Usage: %s <int1> <int2>\\n", argv[0]);return 1...

几道c语言题目 菜鸟望高手解答
第一道题:输出的是:0 1 3 4 \/\/因为for循环 i从0到4 但是当i等于2的时候执行了continue,也就是直接跳转到下一次循环,所以2没有输出 第二题:t为2 因为 if-else 结构中的else是和最近一个if相匹配的,又因为if(x<y)不成立,所以直接执行输出语句,即输出2 第三题:3 6 9 因为x被...

一个关于C语言的问题 求老鸟解答 满意了给高分
执行if(m++>5)时,是先判断后++ 所以此时m=5,所以if为假 跳到else语句,此时m才执行++语句,则m=6 printf语句中先输出m=6的值,才执行m-- 所以以后用的值为5,但是printf语句输出为6

c语言 鸡兔同笼
else if(b<=a*4&&b>=a*2){ c=(4*a-b)\/2; \/\/ 鸡的数目 d=a-c; \/\/ 兔的数目 if(c*2+d*4==b)printf("鸡有%ld只\\n兔有%ld只\\n",c,d); \/\/ c和d反了 else printf("这个真难,计算机也没法算!\\n");} else printf("输入鸡兔脚的数量范围不正确,正确的范围是%d--%d...

C语言菜鸟2个问题,送分!!!送分!!!
问题1:首先说明,char中存放的是字符的ASCII码值.浮点数赋给字符型时,先把浮点数变成整型在赋值给字符型.若该浮点数的整数部分没有超过字符型的最大值(对字符型来说没有溢出),则相当于字符中存放了该整数.用%c输出时是输出该整数对应的字符,如53(ASCII值)对应字符'5'.另外 不同的系统对char的...

菜鸟的c语言问题
当a=17时,a%3=2,%是用来求余数的,17除以3的余数是2,所以a%3==2是真命题,从逻辑上讲,整个a%3==2的值为1,然后a-17为0;||是“或”的意思,“1”和“0”的或为1。

禹会区13648967889: 两道初级C语言的题~
氐贪欧意: 第一个是这么一回事 考的是C的三元运算符 “ ?: ” 一般是这样的 例如 a?b:c => 如果a为真则返回b,否则返回c,也就是说 考题带入数字式这样的10*(10)<(15)?(10):(15) 等同于 10*(10)<(15) 等同于 10*10<15 等同于 100<15这个结果肯定为假,则返回15,define是宏定义 ,是直接替换程序中指定的代码 ,也就是说 10*MIN(10,15)不能理解为10乘以表达式MIN的值,这样理解是错的. 第二道: x%=(y%=2) 等同于 x=x%(y=y%2), %是取模 就是求余,左边除以右边得到的余数 y=y%2 那y=1 x=x%1 那x=0 最后的结果就是0

禹会区13648967889: 菜鸟求助:一道很简单的C编程题 -
氐贪欧意: 这样是可以的,形式是输入一个数跟着输出绝对值 EOF指的是end of file.是一个特定的标记 #include <stdio.h> main() { float a; while(scanf("%f",&a)!=EOF) //这个语句的意思就是用a来接收输入的数 //并以Ctrl+z结束整个程序 { if (a<0) a=-a; ...

禹会区13648967889: C语言的一道菜鸟题目...... -
氐贪欧意: #include main() { int day,sign; do{ printf("\n输入今天的星期:\t"); scanf("%d",&day); if(day==6||day==7)printf("周末愉快\n"); else if(day0)printf("工作日愉快\n"); else printf("输入错误\n"); printf("是否继续输入?(“Y”为继续,按任意键退出):\t"); }while('Y'==(sign=getch())||'y'==sign); } 给点分拉!

禹会区13648967889: c语言菜鸟不懂就问!!! -
氐贪欧意: 1.printf中输出的%c和%d一个是输出字符.一个是输出整型值,所以第一个输出肯定不是50勒,而是字符'2'.2.还是数据类型的问题,char c=32 :是将32这个整型值赋给字符变量c,编译系统会自动将数值32强制转换成对应的字符赋给c,而char ...

禹会区13648967889: 简单C语言选择题(我是菜鸟) -
氐贪欧意: 选b 分析:第一行将0赋值给a,所以第二行中if语句中的条件!a的值为非零,条件成立,所以将x赋值为4,所以最终输出为4.

禹会区13648967889: 4个菜鸟级别C语言选择题 -
氐贪欧意: 你好!!!1.为什么选择D呢??因为数组名字就第一个元素的地址,但是数组名字是个是常量,是不可以改变的 !!而*aa++,就是改变数组.但你可能会问,选项A,怎么对啊??首先我要知道指针变量可以自加或自减.原因是 fun(char aa[...

禹会区13648967889: C语言菜鸟题寻求答案
氐贪欧意: //第一个问题 #include <stdio.h> #define Pi 3.141592653 #define AREA(x) (Pi*x*x) int main() { int i=0; float a; for(i=1;i<=10;i++) { a=AREA(i); if(a>100) break; else printf("半径为%d的圆的面积是%f\ ",i,a); } } //第二个问题 #include <stdio.h> #...

禹会区13648967889: 菜鸟在线求解一道关于C语言FOR语句嵌套的题目 -
氐贪欧意: 第一次:k=1,2:k=13k=0...这时i=2,j=3.因为虽然跳出循环,但是这时i\j已经++了,所以是m=5

禹会区13648967889: 关于C语言的一个菜鸟级问题 -
氐贪欧意: printf("%d%d%d%d\n",1+2,5,-2*4,11%3); "%d%d%d%d\n" 这里的点表示显示的小数位,给你看一个例子,%10.6f 表示输出的浮点数占10位,其中小数点后面有6位,整...

禹会区13648967889: 请回答菜鸟一些C语言问题.请详细解释 -
氐贪欧意: 请回答菜鸟一些C语言问题.请详细解释 悬赏分:0 - 离问题结束还有 14 天 23 小时 下列程序段运行后,x的值是【 】 a=1;b=2;x=0; if(!(--a))x--;//如果--a值再取非的值为真,那么x-- if(!b)x=7;//如果b的值大于0,那么!b等0;如果b等于0,那么b的值不等于0(可以是任意数,不等于的数(与你定义的类型有关)) else ++x;//++x 等于 x = x+1 A.0 B.3 C.6 D.7 其中(--a)是a = a -1

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网