当前位置:首页 » 编程语言 » 请选出合法的c语言赋值语句

请选出合法的c语言赋值语句

发布时间: 2022-11-13 21:49:14

1. c语言问题。i++; 算是赋值语句么

这种讨论意义不大。C语言本身是以表达式为基础的语言,类似的语言如Java。
你说 a = b = c = d 算是赋值 语句吗?输给谁赋值?
a = ( c = b +d )?x : y, 10 呢?
这种以表达式为基础的语言语句分类里面,严格的说就不存在赋值语句。
BASIC、Pascal、Fortran里面有严格的赋值语句。
-----------------------------------------------------------------------------------------
要说 边际效应 (side effert) ,i++的确可能会改变i的值。但是你看看下面的程序:
老的编译器就可以支持左值转换,但是结果呢?
稍微写错了,应该是都通不过,老的编译器,TC除外。
注意提示不同。

其实,如果存在左值就是应该说是你说的赋值语句,
赋值语句由赋值运算符左值和右值。但实际上问题很复杂。

float a=1.0;
((int)a)++;
printf("%f\n",a);

float a=1.0;
(int)a+=1;
printf("%f\n",a);

float a=1.0;
(int)a=a+1;
printf("%f\n",a);

2. 请选出合法的C语言赋值语句请选出合法的C语言赋值语句 A) a=b=58 B) i++; C) a=58,b=58 D) k=int(a+b);

k=int(a+b)。

赋值语句是由赋值表达式再加上分号构成的表达式语句。其一般形式为: 变量=表达式。

在赋值语句的使用中需要注意以下几点:

1、由于在赋值符“=”右边的表达式也可以又是一个赋值表达式, 因此,下述形式 变量=(变量=表达式); 是成立的,从而形成嵌套的情形。

其展开之后的一般形式为:变量=变量=…=表达式; 例如:a=b=c=d=e=5;按照赋值运算符的右接合性,因此实际上等效于:e=5; d=e; c=d; b=c; a=b;

2、注意在变量==说明==中给变量赋初值和赋值语句的区别。 给变量赋初值是变量说明的一部分,赋初值后的变量与其后的其它同类变量之间仍必须用逗号间隔,而赋值语句则必须用分号结尾。 例如:int a=5,b,c;

3、在变量说明中,不允许连续给多个变量赋初值。 如下述说明是错误的:int a=b=c=5必须写为int a=5,b=5,c=5;而赋值语句允许连续赋值。

4、注意赋值表达式和赋值语句的区别。 赋值表达式是一种表达式,它可以出现在任何允许表达式出现的地方,而赋值语句则不能。

(2)请选出合法的c语言赋值语句扩展阅读:

C语言特点:

1、高级语言:它是把高级语言的基本结构和语句与低级语言的实用性结合起来的工作单元。

2、结构式语言:结构式语言的显着特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。

C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。

3. 几道C语言的题,请大家帮帮忙帮我做一下,万分感谢。

一、填空题(每空2分,共20分)
1. 结构化程序由(顺序)、(选择)、(循环)三种基本结构组成。
2. 若k为int型变量并赋值11,请写出运算++k后的表达式的值(12)和变量k++的值(11).
3. c语言主函数是(include),函数体由符号(main)开始,到符号(return 0)结束。
4. 请写出以下程序的输出结果是(101>100)
5.以下程序的输出结果是___2__.
二 、选择题(每题3分,共30分)
1 以下选项中合法的标识符(A)
2 C语言中运算对象是单操作数的运算符(c)
3 若变量已正确定义并赋值,符合C语言语法的表达式是(C)
4. 以下叙述正确的是(A)
5. 以下叙述中正确的是(A)
6.合法的C语言赋值语句是(B)
7. 若变量已定义为int型,要给a,b,c输入的数据,正确的语句是(D)
8. 设a、b和c都是int型变量,且a=3,b=4,c=5,则以下的表达式中值为0的表达式是 ( D )
9.有以下程序: 程序的输出结果是A
10. 以下叙述中正确的是( D )
三、找错题 (每题10分,共30分)
1. 请指出以下C程序的错误所在
#include <stdio.h>;
int Main (viod); /*main funtion*/
{float r,s; /*/* r is radius */,/* s is area of circular*/*/
r=5.0; s=3.14159 * r * r;
printf(“%f\n”,s);
return 0;
}
2. 请指出以下C程序的错误所在
main /*main funtion*/
{ float a,b,c,v; /*a,b,c, are sides ,v is volume of cube */
a=2.0 ; b= 3.0; c=4.0
v=a*b*c;
printf(“%f\n”;v);
return 0;
}
3.下面的fun函数用以判断n是否是素数,fun函数中有逻辑错,请改正。
int fun(int n)
{int k, yes ;
for(k=2;k<=n/2;k++)
{if(n%k==0) yes=0;
else yes=1;
}
return yes;
}
四、编程序 (每题5分,共20分)
1.编写函数int mymod(int a, int b)用以求a 被b 除之后的余数。
int mymod(int a, int b)
{int c;
c=a%b;
return c;
}

4. c语言计算机二级考试选择题如图

全国计算机二级考试试题题库(附答案)
下列各题 A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项在答题
卡相应位置上涂黑,答在试卷上不得分。
(1) 应用软件是指
A) 所有能够使用的软件 B) 能被各应用单位共同使用的某种软件
C) 所有微机上都应使用的基本软件 D) 专门为某一应用目的而编制的软件
(2) 下列述叙中错误的是
A) 计算机要经常使用不要长期闲置不用
B) 为了延长计算机的寿命,应避免频繁开关计算机
C) 在计算机附近应避免磁场干扰
D) 计算机用几小时后,应关机一会儿再用
(3) 下列字符中,ASCII码值最小的是
A) A B) a C) Z D) x
(4) 用晶体管作为电子器件制成的计算机属于
A) 第一代 B) 第二代 C) 第三代 D) 第四代
(5) 下列各不同进制的四个无符号数中,最小的数是
A) ()2 B) (37)8 C) (75)10 D) (2A)16
(6) 二进制数转换成十六进制数是
A) B) C) D)
(7) 下列各无符号十进制数中,能用八位二进制表示的是
A) 296 B) 333 C) 256 D) 199
(8) 计算机的软件系统可分类为
A) 程序与数据 B) 系统软件与应用软件
D) 操作系统与语言处理程序 D) 程序、数据与文档
(9) 486机中的CPU同时能处理的二进制位数为
A) 8 B) 16 C) 32 D) 64
(10) 在使用计算机的过程中,需要重新启动DOS,则要
A) 按Ctrl+Break键 B) 按^C键 C) 按Ctrl+Alt+Del键 D) 按^H键
(11) 现要从软盘启动DOS(软盘中已存有DOS系统),设有如下一些操作:①打开计算机
电源;②将该软盘插入A驱动器;③关好A驱动器门。则冷启动的操作顺序应为
A) ①→②→③ B) ③→②→① C) ②→①→③ D) ②→③→①
(12) 设当前盘中某一文件路径为\A\C\B\,当前目录为\A。下列命令中错误的是
A) CD.. B) RD \A\C\B
C) TYPE \A\C\B\ D) TYPE C\B\
(13) 设当前盘中的根目录下有一子目录AB,在子目录AB下有一文件。现要查看文件
的内容,应使用命令
A) TYPE \AB B) TYPE \AB\
C) TYPE \ D) DIR \AB\
(14) 自动批处理文件必须放在
A) C盘根目录中 B) A盘根目录中
C) 启动盘的任一个目录中 D) 启动盘的根目录中
(15) 设当前盘当前目录为C:\USER\XY\P,且当前盘当前目录为空,则下列命令中能正
确执行的是
A) RD C:\USER\XY\P B) RD USER\XY\P
C) MD \USER\XY\P\USER D) MD \USER\XY\P\X\Y
(16) 下列DOS命令中,合法的是
A) DISKCOMP B) TYPE >>
C) COMP A: B: D) COMP A: A:
(17) 设当前盘为C盘,所用的所有软盘已格式化,且容量相同,则下列DOS命令中错
误的是
A) DISKCOPY A: A: B) COPY A:*.* C) COPY *.* D) COPY A:*.* C:
(18) 下列DOS命令中错误的是
A) TYPE >PRN B) TYPE PRN
C) COPY *.TXT PRN D) COPY CON PRN
(19) 下列四组DOS命令中,互相等价的一组是
A) COPY A:*.* B:与DISKCOPY A: B:
B) COPY +与TYPE >>
C) COPY + 与COPY +
D) TYPE *.FOR>CON与COPY *.FOR CON
(20) 设C盘目录结构如下:
且C盘根目录下文件的内容为
CD FORTRAN
CD \TC
如果在A驱动器中插入一张根目录中只有扩展名为.C的若干文件(即A盘中无DOS系统
文件)的软盘片,则由C盘启动DOS系统后,第一次键入下列命令中,正确的是
A) COPY A:\*.C B) COPY A:\*.C TC
C) COPY A:\*.C FORTRAN D) CD USER
(21) C语言提供的合法的数据类型关键字是
A) Double B) short C) integer D) Char
(22) 在C语言中,合法的长整型常数是
A) 0L B) 4962710 C) D)
(23) 表达式:10!=9的值是
A) true B) 非零值 C) 0 D) 1
(24) 合法的C语言中,合法的长整型常数是
A) '\t' B) "A" C) 65 D) A
(25) 若有说明和语句:
int a=5;
a++;
此处表达式a++的值是
A) 7 B) 6 C) 5 D) 4
(26) 在下列选项中,不正确的赋值语句是
A) ++t; B) n1=(n2=(n3=0)); C) k=i==j; D) a=b+c=1;
(27) 若有说明:int i,j=7, *p=&i;,则与i=j;等价的语句是
A) I= *P; B) *P=*&J; C) i=&j; D) i=* *p;
(28) 不能把字符串:Hello!赋给数组b的语句是
A) char b[10]={'H','e','l','l','o','!'};
B) char b[10];b="Hello!";
C) char b[10];strcpy(b,"Hello!");
D) char b[10]="Hello!";
(29) 若有以下说明:
int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};
char c='a',d,g;
则数值为4的表达式是
A)a[g-c] B)a[4] C)a['d'-'c'] D)a['d'-c]
(30) 若有以下说明:
int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;
则数值为6的表达式是
A) *p+6 B) *(p+6) C) *p+=5 D) p+5
(31) 若有以下说明:
int w[3][4]o={{0,1},{2,4},{5,8}};
int(*p)[4]=w;
则数值为4的表达式是
A) *w[1]+1 B) p++,*(p+1) C) w[2][2] D) p[1][1]
(32) 若程序中有下面的说明和定义
struct abc
{int x;char y;}
struct abc s1,s2;
则会发生的情况是
A) 编译进错 B) 程序将顺利编译`连接`执行
C) 能顺利通过编译`连接`但不能执行 D) 能顺利通过编译`但连接出错
(33) 能正确表示a≥10或a≤0的关系表达式是
A)a>=10 or a<=0 B)a>=10│a<=0
C)a>=10││a<=0 D)a>=10 ││a<=0
(34) 下面程序的输出是
main()
{ int x=3,y=6,a=0;
while(x++!=(y+=o1))
{ a+o=1;
if(y
#include
main()
{ char ss[10]="12345";
strcat(ss,"6789");
gets(ss);printf("%s\n",ss);
}
A) ABC B) ABC9 C) 123456ABC D) ABC456789
(35) 下面程序的输出是
main()
{ char *a="";
int v1=0,v2=0,v3=0,v4=0,k;
for(k=0;s[k];k++)
switch(s[k])
{ default:v4++;
case '1': v1++;
case '3': v3++;
case '2': v2++; }
printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4); }
A) v1=4,v2=2,v3=1,v4=1 B) v1=4,v2=9,v3=3,v4=1
C) v1=5,v2=8,v3=6,v4=1 D) v1=8,v2=8,v3=8,v4=8
(36) 下面程序的输出是
main()
{int k=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}
A)k=11,k=12,k=11 B)k=11,k=13,k=13 C)k=11,k=013,k=0xb D)k=11,k=13,k=b
(37) 若有以下程序段,w和k都是整型变量:

w=k;
LB: if(w==0) go to LE;
w--;
printf("*");
goto LB;
LE: ┆
则不能与上面程序段等价的循环语句是
A)for(w=k;w!=0;w--) printf("*"); B)for(w=k;w;--w)printf("*");
C)w=k; D)w=k;
while(w--!=0)printf("*");w++; do{ w--;printf("*");}while(w!=0);
(38) 若有说明,double *p,a;则能通过scanf语句正确给输入项读入数据的程序段是
A)*p=&a; scanf("%lf",p); B)p=(double *)malloc(8);scanf("%f",p);
C) p=&a;scanf("%lf",a); D)p=&a; scanf("%le",p);
(39) 当执行下面程序且输入:ABC时,输出的结果是
#include
#include
main()
{ char ss[10]="12345";
gets(ss);printf("%s\n",ss); }
A) ABC B) ABC9 C) 123456ABC D) ABC456789
(40) 若有以下的说明和语句:
main()
{int t[3][2], *pt[3],k;
fpr(k=o; k<3;k++)pt[k]=t[k];
}
则以一选项中能正确表示t数组元素地址的表达式是
A) &t[3][2] B) *pt[0] C) *(pt+1) D) &pt[2]
(41) 下面程序输出数组中的最大值,由s指针指向该元素.
main()
{ int a[10]={6,7,2,9,1,10,5,8,4,3,},*p,*s;
flr(p=a, s=a; p-a<10; p++)
if(---?---)s=p;
printf("The max:%d",*s):
}
则在if语句中的判断表达式应该是
A) p>s B) *p>*s C) a[p]>a[s] D) p-a>p-s
(42) 下面程序的输出是
#include
main()
{ char*a="abcdefgh";
fun(a);puts(a); }
fun (char * s)
{ int x=0,y;char c;
for(y=strlen(s)-1;x
A)abcdefgh B)hgfdecba C)dcbahgfe D)hgfedcba
(43) 若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句
中实参的个数是
A)3 B)4 C)5 D)6
(44) 下面程序的输出是
main()
{ int t=1; fun(fun(t));}
fun(int h)
{ static int a[3]={1,2,3};
int k;
for(k=0;k<3;k++) a[k]+=a[k]-h;
for(k=1;k<3;k++) printf("%d",a[k]);
printf("\n"); return(a[h]);}
A)1,2,3, B)1,3,5, C) 1,3,5, D) 1,3,5,
1,5,9, 1,3,5, 0,4,8, -1,3,7,
(45) C语言中,函数的隐含存储类别是
A)auto B)static C)extern D)无存储类别
(46) 下面程序的输出是
int w=3;
main()
{ int w=10; printf("%d\n",fun(5)*w); }

5. 请选出合法的C语言赋值语句______。 A、a=b=58 B、i++ C、a=58,b=58; D、k=int(a+b); A,B,D为什么不正确

A、B没有分号

6. C语言作业

仅供参考

一、单选题
1.下列选项中,不能用作标识符的是(d )
A _12_ B _1_2 C int_2_ D 2_int_

2.下面哪些是C的关键字(b )
A define B void C INT D printf

3.下列正确的转义字符是( d)
A.''' B.'\97' C.'\0xab' D.'\\'

4.0x20U是( d)
A.整型常量 B.字符型常量 C.浮点型常量 D.非法常量

5.与0x200等值的数为( d)
A.0512 B.512 C.01024 D.1024

6.表达式23/3%3的值是( a)
A.1 B.2 C.3 D.0

7.假设 int x=5,n=5; 则执行表达式x += ++n后x的值是 ( c).
A.6 B.5 C.11 D.10

8.已知int a,b; float c; 则错误的表达式语句是( a)
A.a=c+b; B.b+=a ; C.a=int (c); D.a=1,b=2;

9.下列运算符中优先级最高的是( c)
A.<= B.&& C.-> D.=+

10. 设a,b,c为int型变量,且a=3, b= 4, c=5,下面表达式值为0的是( b)
A. 'a' && 'b' B.a>b C.a || b+c && b-c D.b<c

11. 合法的C语言表达式是( a)
A. a+=58 B. (i+j)++ C.a=58; b=58 D.k = int(a+b)

12. 下列实型常数表示形式非法的是(d )
A.327. B.1.48e4 C..5E-10 D.0x2.1e4

13. 已知char ch; 则错误的赋值语句是( c)
A.ch='\0'; B.ch='1'+'2'; C.ch='a+b'; D.ch=10+5;

二、判断题
1.0xabfUL是合法的整型常量。 ×
2. 数据1015 在C语言程序中表示为E15。 ×
3. 若char c; 则赋值语句c=62+3;合法。 √
4. 定义语句int n=3, a[n]; 是合法的。 ×
5.构成C程序的基本单位是函数,所有函数名都可以由用户命名。 ×

三、问答题
1.请写一个C表达式,如果字符变量ch的值是小写字母,则结果为对应的大写字母,否则不变。
ch=(ch<97?ch;ch-32);
2.写出描述“x是小于等于10的正数”的表达式。
x<=10&&x>0;

7. c语言,程序设计题,如图

c 语言程序设计练习题 c 语言程序设计练习题 篇一:c 语言程序设计基础单元总结与练习题及答案 答案 单元一程序设计宏观认识 单元总结提升 本...

8. C语言的一道题目:设x,y均为float型变量,则以下赋值语句不合法的是( )

该题应该选择B答案,因为求余运算符两边的操作数只能是整形变量,不能为float型。。。。
另外替你分析一下其他选项:
A:++是自增运算符,即x的值先加1后再使用x的值,该值正确。
B:略。。
C:符合运算符, x*=y+8等同于x=x*(y+8),该值也正确,只是会损失精度,x*(y+8)返回的值是double型的,而x定义的为float型。。但不影响正确性。。
D:连续的赋值运算嘛,自动将0转换为float型赋给x和y,也正确。。。

9. C语言 表达式 多选题

1) BD
2) ACD
3) BCD
4) AD
5) BD

10. 26、请选出合法的C语言赋值语句

选项A和选项C中都没有以“;”结束,故选项A和选项C都不是正确的赋值语句;选项D中强制转换类型符int应用括号括起来,故选项D不正确,只有选项B是合法的C语言赋值语句。

热点内容
服务器如何搭建文件 发布:2025-01-12 19:06:34 浏览:383
安卓设置权限是什么意思 发布:2025-01-12 19:05:59 浏览:159
自动编译div 发布:2025-01-12 18:51:06 浏览:660
手机路由器如何登陆密码 发布:2025-01-12 18:35:41 浏览:464
电光猫无法连接服务器是什么原因 发布:2025-01-12 18:32:58 浏览:512
迷你世界测试服的密码从哪里打开 发布:2025-01-12 18:25:32 浏览:111
我的世界手游tis服务器 发布:2025-01-12 18:24:28 浏览:585
青海省分布式服务器云主机 发布:2025-01-12 18:12:03 浏览:477
英雄联盟安卓手机版怎么切换 发布:2025-01-12 18:10:53 浏览:382
q5尊享时尚型哪些配置 发布:2025-01-12 18:05:41 浏览:230