下边是一个简单的C语言问题

作者&投稿:菜泄 (若有异议请与网页底部的电邮联系)
下边是一个关于C语言的简单问题:~

a='2'其实你是把字符'2'赋值给a,此时a=50也就是字符'2'的ascii码

a=a+a=a-a*a
不能给表达式赋值,只能给变量赋值,所以是从右往左算。a+=a就是a=a+a,-=类似。
首先a=a-a*a,a就变成-132,接着a=a+a,a就变成-264

若解释合理希望给分,谢谢!

希望我的回答对你有帮助,可以的话记得采纳哈,先谢谢啦!
首先,说一下break的功能,break是用来终止当前循环,记得,是终止当前整个循环。现在给你分析上面那两个程序:
左边这个,是为了查找出所有(记住,是所有)符合3*x*4*y=100的x,y的值并分别打印出来,所以x,y的所有可能的组合都必须过一遍,因此当x,y的组合不满足条件时,不能用break终止整个for循环(即停止继续查找)
右边这个,情况就不同了。这个程序的功能是查找出3-10之间的素数,从3开始找,3是素数就不用说了,我们谈一下4,因为4不是素数,所以当a=4时,开始分析,b=2时,4%2==0,所以不满足条件,跳过printf语句,然后遇到了break,跳出for循环(因为用了break,所以b=3的情况就被跳过去了,这里说下,break跳出的循环是里面的那个for循环,外面的for循环继续执行),接下来就是a=5的情况了,以此类推...我再罗嗦下吧,里面的for循环是用来判断一个数是不是素数,因此一旦发现不是素数,就可以跳出这个for循环了,比如刚刚说的4已经能被2整除了,就知道它不是素数了,自然也就不需要考虑4能不能被3整除了...所以一旦判断不是素数,用break跳出,继续下一个要判断的数即可。。。。。。。没口水了额
说的蛮清楚了吧,呵呵,懂了的话给分哈,谢拉 ...

目的,不一样,如果你懂break,就很简单,break就是满足条件了,然后跳出本循环。

你从y<25和b<a区别一下!

图1中你是要得到对所有的x<34,y<25且满足3*x+4*y=100的(x,y)对,如果你用了break则y永远也只会等于1
而图2我是不是可以这样理解题意,求3到10中哪些不能被2整除,如果是的就没错,如果不是的就错了
break只是跳出当前循环

你的程序是为了搜索满足条件的数据,因此最好不用break.用了以后,找到一组结果就不再搜索,这样会遗漏结果,你把以下程序运行一下,看看结果:
#include <stdio.h>
void main()
{
int x, y;
int a, b;
for (x=1; x<34; x++)
for (y=1; y<25; y++)
{
if (3*x+4*y == 100)
printf("x=%d\ty=%d\n", x, y);
}
printf("=================\n");

for (x=1; x<34; x++)
for (y=1; y<25; y++)
{
if (3*x+4*y == 100)
{
printf("x=%d\ty=%d\n", x, y);
break;
}
}
printf("=================\n");

for (a=0; a<=10; a++)
for (b=2; b<a; b++)
{
if (a%b!=0)
printf("a=%d\n", a);
break;
}
printf("=================\n");

for (a=0; a<=10; a++)
for (b=2; b<a; b++)
{
if (a%b!=0)
printf("a=%d\n", a);
}
}

50也就是字符'2'的ascii码


写一个简短的C语言代码
最简单的C语言代就是输出“helloWord”,通常是作为初学编程语言时的第一个程序代码。具体代码如下:include <stdio.h> int main(){ printf("Hello, World! \\n");return 0;}

如何编写这个简单的C语言—— 2
简单好懂一点,用个双循环。内循环用于算aaa,外循环完成累加。输入和边界检查没有做,自己补充。include <stdio.h> int main(){ int a,n;int i,j;long sum,tmp;printf("输入a:");scanf("%d",&a);printf("输入n:");scanf("%d",&n);sum=0;for(i=1;i<=n;i++){ tmp=0;for(j...

简单C语言编程,求解答
double a,b,c,s,S;printf("请输入三角形的三个边:");scanf("%lf,%lf,%lf",&a,&b,&c);while(a+b<=c||a+c<=b||b+c<=a){ printf("输入错误,不能组成三角形,请重新输入!");scanf("%lf,%lf,%lf",&a,&b,&c);} s=(a+b+c)\/2;S=sqrt(s*(s-a)*(s-b)*(s-...

如何用C语言编写一个简单的程序!
1、鼠标左键双击c语言软件,打开,打开后界面如图,点击关闭即可 2、点击上方程序窗口左上角的文件,选择新建 3、在打开的窗口中选择文件,下边一般是第四个 c++Source file,输入文件名(hellw.c),一定要以“.c”为后缀结尾 4、进入编辑页面在,页面编辑源代码就可以 includestdio.h void main()...

用简单的c语言编写四则运算题
if(results == add(num1,num2)){ printf("回答正确!\\n");right++;} else { printf("回答错误!\\n");wrong++;} printf("是否继续?y\/n\\n");getchar();scanf("%c",&ch);if(ch == 'y')break;else if(ch == 'n')goto end;} else if (data == 2){ num1 = rand()%...

求一个50行左右的简单些的C语言程序,
int output (head xxx[],int c);int input (head xxxx[],int d);int input (head xxxxx[],int e);int main (int argc, char *argv[]){int mcck=2;char str1[8]="a123",str2[8];char choice;head str[N]={{"",0,0.0,0.0,0.0}};system("wind.exe");cck: syst...

最简单的C语言中输出X为什么要写x=%d\\n,后面这=%d\\n是什么意思
d 是整型数据描述符 \\n 是换行符 x=是字符串常数 printf("x=%d\\n",x); 的意思在 x= 这个字符串后边以整型格式输出变量 x 的内容 输出后换行。

c边是什么意思网络用语
网络用语c边是擦边球的意思。c边可以用来表示“擦边球”的意思,比喻某种行为或言论在政策、规定或规则的边缘徘徊,没有直接违反,但接近边缘。它也可以表示“中心位置”或“核心位置”,用于形容某个人或事物在某个方面占据重要地位。网络用语c边是擦边球的意思。

简单C语言改错,刚开始学的,编了一个小程序就是不知道哪里有问题,不会改...
void num_kecheng();void inputstu();这两个函数仅仅定义了,但是没有方法执行 你的flag变量定义了两次而且都没有给赋初值,你全局定义了一次局部又定义了一次。看你的代码估计就想用一个所以不要再main()函数中在定义了。我大概把问题找完了,因为没具体看你的代码是做什么的,所以后边两个方法你...

简单好玩的编程代码?
这是一个简易版贪吃蛇的代码,虽然结构简单,但是该有的功能都是完整的,可玩性也不错c语言编程烟花代码简单 c语言编程烟花代码简单如下: #include"stdlib.h" #include"graphics.h" #include"stdio.h" #include"math.h" #include"conio.h" #definePI?3.1425926 main() { intgdriver=DETECT,gmode,errorcode; ...

塔河县18551209988: 很简单的C语言的问题题目是:输入任意大小的三个整数,判断期中是否有两个奇数一个偶数.若是则输出YES,不是则输出NOT(要求用条件表达式进行... -
端木莉二叶:[答案] 楼主注意这句话: h=((g=2)?"YES":"NO"); 是把2赋值给g,并不是二者进行比较.把2赋值给g永远都是正确的,所以会输入YES.要用g==2来判断. 改成下面的代码就可以了. #include void main() { int a,b,c,d,e,f,g; char *h; printf("请输入...

塔河县18551209988: 一个简单的C语言问题 -
端木莉二叶: 枚举类型中,后面变量值是前面变量的值加1 如Basic=3,则Assembly=4 同样 Ada=100,则COBOL=101,Fortran=102

塔河县18551209988: 一个简单的c语言问题,在线等啊.程序如下.
端木莉二叶: 这个问题不难!在C语言里面&是取地址的意思,相当于指针,参数的值可以传回来.如果这样定义的话voidsub(intx,inty,intz){z=x-y;}执行sub(10,5,a)后,a并不等于5(a的值不会改变),因为在sub函数运算出z=5后,并不会将z的值返回给a.而将地址赋给它后,sub函数直接对a的地址所对应的存储空间操作,所以说z=5相当于在变量a对应的存储空间里存入5.好好学吧,不了解的话很难懂,懂了之后发现它其实也就那么回事.

塔河县18551209988: 一个简单C语言的问题!
端木莉二叶: 要看p是什么类型的指针,如果p的类型是指向指针的指针,那当然可以把地址赋给*p. 比如下面这段代码: int **p; int *q; int a=10; p=&q; *p=&a; printf("cont=%d\n",**p); 得到结果为:cont=10 这样看的懂了吗? 另外补充说明一下,p在刚定...

塔河县18551209988: C语言一个简单问题
端木莉二叶: //你要先判断能不能构成三角形,如果能,再判断是等腰还是等边又或者是普通. //我改了下你的代码,应该没错了.你运行下.如果有什么问题请追加 #include"stdio.h" main() { int a,b,c;printf("请输入第一个边:"); scanf("%d",&a); ...

塔河县18551209988: 一个简单的C语言问题 -
端木莉二叶: #include #define N 20void cmp(char *p1,char *p2,char *p3,char **p){ char *t1,*t2; p[0]=strcmp(p1,p2)>0?p1:p2; t1=p[0]==p1?p2:p1; ...

塔河县18551209988: 一个简单的C语言问题
端木莉二叶: /* 以下修改在VC2008下测试通过 */ #include<stdio.h> #include<string.h> void main() {char a[2][80];char m[80];int i,n;int s=0,j;printf("输入:");for(i=0;i<2;i++)gets(a[i]);for(i=0;i<2;i++){s = 0;for(j=strlen(a[i])-1;j>=0;j--){if(a[i][j]==' ') ...

塔河县18551209988: 一个很简单的C语言问题 -
端木莉二叶: *p前面是逗号 struct stru a={10,'X'},*p=&a;等价于 struct stru a = {10, 'X'}; struct stru *p=&a;

塔河县18551209988: C语言中的一个简单问题 -
端木莉二叶: 这个问题简单.一般include的都是.h的文件,称为头文件.前辈们为了方便我们这些小生把常用的函数分类后写入的头文件中,所以每一个头文件中都是一类的函数.最常用的就是stdio.h这个文件,其...

塔河县18551209988: 简单的C语言问题 -
端木莉二叶: main() int a,b,c,t; scanf("%d%d%d",&a,&b,&c); /* 输入三个数 */ printf("a=%d,b=%d,c=%d",a,b,c); /* 做比较用 */ t=a;a=b;b=t; /* 现在b原来的值变成了a的值,a原来的值变成了b的值 */ t=a;a=c;c=t; /* 这时候 a的值(其实是b的原值) 变成了c的值,也就等于b 的值给了C;*/同时C的值也给a printf("%4d,%4d,%4d",a,b,c); }

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