第一个读入的字符是Y 所以c == Y 这个--c就是X 所以putchar(--c)输出的就是X 下一个读取的字符是?但是?不满足while循环的条件 所以while不再执行 后面的字符也不再读取
据我所知,switch后只可以接一个变量而非一个表达式,我觉得可以这样改一下。int k=0;char c;cin>>c;do { switch(c){ case 'A':k++;break;case 'B':k--;case 'C':k+=2;break;case 'D':k=k%2;continue;case 'E':k=k*10;break;default:k/3;}k++;}while(c<'G');printf...
你这段代码就是8x8个格子,行号1-8,列号1-8,当一个格子行列号相加为偶数时,就输出你后面的东西。你后面printf("%c%没完,不知道要输出什么,请补充题目。如果是国际象棋棋盘,因该是输出一个黑色框。
这有二个原因:一是程序中输入的n在求立方和的过程中已经被破坏了(n已经变为了0),所以永远都不会等于的了(除非开始时输入一个0)。第二,由于水仙花数很少,若输入的不是水仙花数,也会输出NOT的。include<stdio.h> include<math.h> int main(){ int n,sum,k,n1;sum=0;printf("Input ...
输出1,3,7,15,31,63.第一次循环先输出结果a=1,b=3,循环结束后此时a=7,b=15;运行第二次循环,输出a=7,b=15,循环结束后此时a=31,b=63;第三次循环输出a=31,b=63,此次循环结束后a=127,b=255=>100;退出循环
d=20 程序是这样一个结构,所以一个条件都满足 main(){ int a=0,b=1,c=0,d=20;if(a)d=d-10;else if(!b){ if(!c)d=15;else d=25;} printf("d=%d\n",d); getch(); }
如果是a:b; c:t1;则程序是求得最小值;如果是b:a; t1:c;则程序是求得最大值;如果题目没有要求,b:a t1:c 也是正确的;三目运算符a<b?a:b;的意思是,如果a
补入 输入输出语句:include<stdio.h> include<math.h> int main(){ int a,b,c;float e,d,f;printf("input data: a b c d e f\n");scanf("%d %d %d %f %f %f",&a,&b,&c,&d,&e,&f);printf("Your input is:\n");printf("%d %d %d %f %f %f\n",a,b,c,d,e,f...
if()else语句的嵌套默认的情况下,else语句与离他最近的if配对。所以本例else和第二个if配合。第一个if的判断条件不成立,则跳过其后的语句体 if(b<c) c=0;else c+=1;全部不执行。只执行最后的 printf("%d\n",c);所以输出的结果是2 ...
include <stdio.h> //c语言 include <math.h> int main(){ double m,x,y;printf("请输入两个数:");scanf ("%d %d",&x,&y);m=pow(double x,double y);printf("%d",m);return 0;} //我没有调试哈,有问题自己该哈 include <iostream> include <cmath> using namespace std;in...