c语言编程继续终止yn的例子

通过计算机编程来验证。答案是b。

这是因为x的初始值是3,

在printf函数中第一次执行x-=2后,值为1,输出为1。

在while中执行-x后,值为0。

!0导致循环再次执行,

再次执行printf中的x-=2后,值为-2。再次输出-2。因为第一次执行printf的时候没有换行符,所以1和-2会连接起来。

然后再次执行while条件中的-x,即-2减1。如果值为-3,如果不为0,则跳出循环。节目结束了。

请问C语言如何在Y\N之后设置前面的循环,然后在Y之后继续执行,从而结束程序,求大神! 我看不清你的照片,所以不能换。给你一个建议:写一会儿(1){...}循环,把你要输入输出的代码段写在{}里;设置一个退出标记字符,比如#,当您不想再输入任何内容时,输入#代码就退出了。也可以用y/n。

c语言编程的例子 主题1

#包含“stdio.h”

无效总管(无效)

{

int n=5,m=10,I = 1;

长和= 1;

for(;I = n;我)

{

sum * = I;

}

printf("\n5!=%d ",sum);

for(I = 1;i = 10我)

{

sum * = I;

}

printf("\n10!=%d ",sum);

}

话题2

#包含“stdio.h”

#包含" string.h "

结构学生

{

char s _ Name[25];

长n _ Code

int n _ English

int n _ Math

int n _ Computer

}学生_1,学生_ 2;

无效总管(无效)

{

printf(" \ n student 1:\ n name:");

scanf("%s ",student _ 1 . s _ Name);

printf(" student num:");

scanf("%d ",student _ 1 . n _ Code);

printf("英语成绩:");

scanf("%d ",student _ 1 . n _ English);

printf("数学成绩:");

scanf("%d ",student _ 1 . n _ Math);

printf("计算机分数:");

scanf("%d ",学生_ 1.n _计算机);

printf(" \ n student 2:\ n name:");

scanf("%s ",student _ 2 . s _ Name);

printf(" student num:");

scanf("%d ",student _ 2 . n _ Code);

printf("英语成绩:");

scanf("%d ",student _ 2 . n _ English);

printf("数学成绩:");

scanf("%d ",student _ 2 . n _ Math);

printf("计算机分数:");

scanf("%d ",学生_ 2.n _计算机);

printf(" \ n学生1:\ n姓名:% s \ n学生编号:%d\n英语成绩:% d \ n数学成绩:% d \ n计算机成绩:% d \ n ",学生_ 1.s _姓名,学生_ 1 . n _代码,学生_ 1 . n _英语,学生_ 1 . n _数学,学生_ 1 . n _计算机);

printf(" \ n学生2:\ n姓名:% s \ n学生编号:%d\n英语成绩:% d \ n数学成绩:% d \ n计算机成绩:% d \ n ",学生_ 2.s _姓名,学生_ 2 . n _代码,学生_ 2 . n _英语,学生_ 2 . n _数学,学生_ 2 . n _计算机);

}

在C语言编程中,如何实现程序计算完成后,还可以继续输入公式和计算? 我对main函数做了一些修改,添加了一个char a来接收用户输入的Y或N。如果用户输入Y,屏幕将被清除,然后用户可以开始输入公式。如果用户输入N,程序将退出,如果输入其他字符,将无效。在使用getch()函数时,需要添加一个头文件# includeconio.h,我之所以使用getch,是因为输入字符Y或N后不用按回车键确认,当然如果想让用户输入Y或N再按回车键确认,只需将getch改为getchar即可。

void main()

{

双重结果;

char a;

FILE *data=fopen("61590_4.dat "," at ");

if(data==NULL)

data=fopen("61590_4.dat "," wt ");

if(data==NULL)

返回;

接下来:

token[n]= getchar();

result = exp();

if(token[n]=='\n ')

{

令牌[n]= ' \ 0 ';

printf("%s=%g\n ",token,result);

fprintf(data," %s=%g\n ",token,result);

}

else error();

Printf("按y继续,按n结束\ n ");

while(真)

{

a = getch();

if (a == 'y ')

{

系统(“cls”);

转到下一个;

}

else if (a == 'n ')

返回;

}

fclose(数据);

}

c语言计算器,如果用户输入y,用户也可以输入公式计算,如果用户输入n,程序退出。 # includes dio . h//望采纳!!!

int main (void)

{

双a,b;

char ch,yn;

做{

fflush(stdin,NULL);

Printf("请输入一个表达式:");

scanf ("%lf%c%lf ",a,ch,b);

开关(通道)

{

案例“”:

{

printf ("%lf %c %lf = %lf\n ",a,ch,b,a b);

打破;

}

大小写'-':

{

printf ("%lf %c %lf = %lf\n ",a,ch,b,a-b);

打破;

}

案例“/”:

{

printf ("%lf %c %lf = %lf\n ",a,ch,b,a/b);

打破;

}

大小写' * ':

{

printf ("%lf %c %lf = %lf\n ",a,ch,b,a * b);

打破;

}

默认值:

{

Printf("公式输入错误!请以(数字1,数字2)的格式输入!”);

}

}

fflush(stdin,NULL);

Printf("计算完成!你想再次使用吗?y/n:");

scanf ("%c ",yn);

if (yn=='y' || yn=='Y ')

{

系统(“cls”);

Printf("欢迎再次使用\ n \ n ");

继续;

}

Printf("感谢使用这个计算器!这项服务结束了!\ n ");

打破;

} while(1);

}

C语言程序设计练习 一、选择题

1、c语言中,在一个源程序中,main()函数的位置是(c)。

a)一定在开头b)一定在结尾。

c)可以任意d)必须在系统调用的库函数后面。

把这个问题背下来就行了。看看这个。

任何c++程序都必须定义一个main函数,它的返回类型总是int。这个函数由操作系统在main函数中调用。

执行完数字后,程序终止。Main还可以使用return将一个值返回给操作系统,该值可以被使用操作系统的命令检测到。

main的返回值。一般来说,main返回0表示程序运行过程中没有错误,其他非零值表示程序异常。

如果没有为main指定返回值,则返回值是任意的。

2.如果X和Y都是int变量,X = 100,Y = 200,并且有以下程序段,printf ("%d ",(X,Y));它的输出结果是(a)。

a)200 B)100 C)100D)输出不确定值。

(x,y)这是一个逗号表达式。表达式的值是最后一个逗号后的值。因为前面有个%d,所以输出是y。

价值

3.合法的C语法字符常量是(C)。

A) "A" B) 65 C) '\t' D) A

字符用两个单引号括起来,死记硬背,a)作为字符串。

4.“3的表情!= 4”的值为(a)。

A) 1 B) 0 C) T D) F

!=是C语言的逻辑运算符,3!= 4为真,多为1,3 = 4为假,值为0。

5.int a=1,b=2,c=3,d=4,执行以下过程后,X的值为(C)。

如果(ab)x = 1;else if(CD)x = 2;else x = 3;

A) 1 B) 2 C) 3 D) 4)

如果ab,12为假,不执行x=1,执行else if(cd),判断:34为假,不执行x=2,执行=3,完毕。

6、下列程序的输出是(d)。

Int x=10,y=3,z;printf("%d\n ",z=(x%y,x/y));

A)1 B) 0 C) 4 D) 3)

逗号表达式,x%y,10%3,商3+1,模1,x/y,10/3,商3+1,除法3,逗号表达式,表达式的值是最后一个。

逗号后的表达式的值。

7.为了表示x≥y≥z,要用C语言表达式(a)。

A) (x=y)(y=z) B) (x=y)和(y=z)

C) (x=y=z) D) (x=y) (y=z)

关系运算符x=y和y=z必须同时建立,因此应该使用逻辑运算符和。

8.数组的合法定义是(a)。

a)int a[]= " string ";B) int a[5]={0,1,2,3,4,5 };

c)char a = " string ";d)char a[]= { " 01234 " };

a没有指定数组长度的定义,正确。

数组B的长度为5,即有5个数组元素,多一个数组元素。

c定义A不是数组而是变量,素数组应该是[]。

d错误,字符串定义如下:char a [] = {'0 ',' 1 ',' 2 ',' 3 ',' 4 ',' \ 0 ' };

[4]中的数字是数组的长度,表示数组中有几个元素。

9.如果X和Y都是int变量,则语句“X = Y;y = x-y;x-= y;”的作用是(d)。

a)按降序排列x和y b)按降序排列x和y。

c)没有明确的结果d)交换x和y中的值。

X =y等于x=x y,X加Y的值赋给X,X现在持有的是X和Y之和。

Y=x-y将X减去Y的值赋给Y,X现在存储X和Y之和(x y)-y=x,将X的值赋给Y,Y存储X的值。

X-=y等于x=x-y,把X减去Y的值赋给X,(x y)-y=x,X的值现在存放在后面的Y里,完成后存放在X里的值就是Y,这样就完成了交换。

10.如果x和y已经定义为double类型,则表达式“x=1,y = x ^ 3/2”的值为(c)。

A) 1 B)2 C) 2.0 D) 1.0

逗号表达式,让x=1计算y=x 3/2,得到2,因为是double类型,所以有小数点。

11、下列条件语句中,功能不同于其他语句的是(d)

A) if(a) printf("%d\n ",x);else printf("%d\n ",y);

B) if(a==0) printf("%d\n ",y);else printf("%d\n ",x);

c)如果(a!=0) printf("%d\n ",x);else printf("%d\n ",y);

D) if(a==0) printf("%d\n ",x);else printf("%d\n ",y);

a如果a为真,输出x;如果a为假,则输出y。

b如果a==0,即假,输出y,a为真,输出x,与a相同。

c如果a!=0为真,输出x,a为假,输出y同上。

d如果a是假输出x,如果a是真输出y,和上面不一样。

12、下列能正确定义二维数组的是(C)

a)int a[][3];b)int a[][3]= 2 { 2 * 3 };

c)int a[][3]= { 0 };D) int a[2][3]={{1},{2},{3,4 } };

不会将初始值赋给数组。

B {}不能有*

c正确,记住第一个[]可以空,第二个[]不能空,死记硬背。

D a[2][3]表示有两个一维数组,每个数组有三个元素,{{1}、{2}、{3,4 } };她指的是三个数组,{}中的每一个{}都代表一个数组,其中的数字就是一个数组元素。

13.用C语言编写的代码程序(B)

a)它可以立即执行b)它是一个源程序。

c)可以在编译后执行d)可以在编译解释后执行。

机械地记忆

相关文章

发表新评论