关于C语言中的字符串数组输入输出控制符的若干问题
C语言单选题

1、下列符号串中,不属于C语言保留字的是A、ifB、thenC、staticD、for参考答案:B2、下列符号中,不属于转义字符的是A、\\B、\x00C、\nD、\09参考答案:D3、以下程序的输出结果是# include <stdio.h># include <string.h>void main(){char str[12]={'s','t','r','I','n','g','\0'};printf("%d\n",strlen(str));}A、6B、7C、11D、12参考答案:A4、下列符号可以作为变量名的是:A、+aB、*pC、_DAYD、next day参考答案:C5、下面有关for循环的正确描述是:A、for循环只能用于循环次数已经确定的B、for循环是先执行循环体语句,后判断表达式C、在for循环中,不能用break语句跳出循环体D、for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来参考答案:D6、C语言规定,函数返回值的类型是由A、return语句中的表达式类型所决定B、调用该函数时的主函数类型所决定C、调用该函数时系统临时决定D、在定义该函数时所指定的函数类型所决定参考答案:D7、假定a和b为int型变量,则执行以下语句后b的值为a=1;b=10;do{b-=a;a++;}while(b--<0);A、9B、-2C、-4D、8参考答案:D8、若有以下说明,则数值为4的表达式是:int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',g;A、a[g-c]B、a[4]C、a['d'-'c']D、a['d'-c]参考答案:D9、以下叙述不正确的是A、一个C源程序可由一个或多个函数组成B、一个C源程序必须包含一个main函数C、C程序的基本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面参考答案:D10、执行下列程序段,其中的do-while循环一共执行_次。
二级C语言-115_真题无答案

二级C语言-115(总分100, 做题时间90分钟)一、选择题1.下列数据结构中,属于非线性结构的是______。
SSS_SINGLE_SELA 循环队列B 带链队列C 二叉树D 带链栈2.在面向对象方法中,实现信息隐蔽是依靠______。
SSS_SINGLE_SELA 对象的继承B 对象的多态C 对象的封装D 对象的分类3.软件设计中划分模块的一个准则是______。
SSS_SINGLE_SELA 低内聚低耦合B 高内聚低耦合C 低内聚高耦合D 高内聚高耦合4.C语言中,下列不合法的字符常量是______。
SSS_SINGLE_SELA "\xff"B "\65"C "&"D "\028"5.以下选项中,能用作用户标识符的是______。
SSS_SINGLE_SELA voidB 8_8C _0_D unsigned6.下列叙述中正确的是______。
SSS_SINGLE_SELA 程序执行的效率与数据的存储结构密切相关B 程序执行的效率只取决于程序的控制结构C 程序执行的效率只取决于所处理的数据量D 以上三种说法都不对7.软件详细设计产生的图如图所示。
该图是______。
SSS_SINGLE_SELA N-S图B PAD图C 程序流程图D E-R图8.下列运算符中优先级最低的算符是______。
SSS_SINGLE_SELA ||B !=C <=D +9.在E-R图中,用来表示实体联系的图形是______。
SSS_SINGLE_SELA 椭圆形B 矩形C 菱形D 三角形10.有三个关系R、S和T如下:RA B Ca 1 2b 2 1c 3 1SA B Cd 3 2TA B Ca 1 2b 2 1c 3 1d 3 2其中关系T由关系R和S通过某种操作得到,该操作为______。
SSS_SINGLE_SELA 选择B 投影C 交D 并11.下列关于C语言文件的叙述中正确的是______。
浙江理工大学05-06C语言期末试卷(含答案)

C程序设计试卷一、单选题(本题共20分,每小题2分)(1) 以下C语言常量中,表达错误的是___(1)___。
[A] 0xFF [B] 3.2e0.5 [C] 5.6 [D] ‘\n’(2) C程序的基本结构有___(2)___。
[A] 选择、重复和模块[B] 顺序、选择和模块[C] 顺序、选择和循环[D] 逻辑、物理和程序(3) 在C语言程序中,关于字符串的描述正确的是___(3)___。
[A]可定义一个字符串变量来存储字符串;[B] 可定义一个字符变量来存储任意字符串;[C] 可定义一个字符数组来存储字符串;[D] 可定义一个字符指针来存储字符串;(4) 在C语言中,用关键字___(4)___定义双精度类型变量。
[A] single [B] double [C] float [D] int(5) 下面叙述中不正确的是___(5)___。
[A] 不同函数中可以使用相同名字的变量[B] 形式参数是局部变量[C] 在一个函数内部的复合语句中定义的变量在本函数范围内有效[D] 在一个函数内部定义的变量只能在本函数范围内有效(6) 下面程序段的输出结果是___(6)___。
int i=100;while(i>120)i=i+1;printf(″%d″,i);[A] 100 [B] 101 [C] 120 [D] 121(7) 以下定义语句中正确的是___(7)___。
[A] char a='A' b='B';[B] float a=b=10.0;[C] int a=10, *b=&a;[D] float *a,b=&a;(8) 已有定义:int i, a[10], *p;,则合法的赋值语句是___(8)___。
[A] p=100; [B] p=a[5]; [C] p=a[2]+2; [D]p=a+2;(9) 设有定义:int a,*p1=&a; 以下scanf语句中能正确为变量a读入数据的是___(9)___。
计算机二级C语言辅导 10章 字符串

例2. 删除一个字符串中的一个字符。 字符串由标准输入得到,欲删除的字符也由标准输入得到
main ( ) { char s[20],c; int i,j; gets(s); c=getchar( ); for (i=j=0;s[i]!=„\0‟;i++) if (s[i]!=c) s s[j++]=s[i]; s[j]=„\0‟; c=l }
p
i j
i j
i j
i
j
i
W
0
o
1
r
2
l
3
d
4
\0
5
例2. 删除一个字符串中的一个字符。 字符串由标准输入得到,欲删除的字符也由标准输入得到
main ( ) { char s[20],c; int i,j; gets(s); c=getchar( ); for (i=j=0;s[i]!=„\0‟;i++) if (s[i]!=c) s s[j++]=s[i]; s[j]=„\0‟; c=l }
H o w \0
0 1 2 3 4 5 6 7 8 9 10 11 12
字符数组
五、字符串处理函数: 1.puts(字符数组); 将字符串输出到终端,在输出时将字符串结束标记‘\0‟转换成‘\ char str[ ]={“China\nBeijing”}; puts(str); 输出:China Beijing 2.gets(字符数组)--读入全部字符(包括空格),直到遇到回车符为止 从终端输入一个字符串到字符数 如果输入以下12个字符: 组,并且得到一个函数值,该函 数值是字符数组的起始地址。
第十章 字符串
在C语言中,没有字符串这种数据类型, 因此可以将字符串存放在字符数组中。 这是处理字符串的方法之一。
二级C语言笔试-421_真题(含答案与解析)-交互

二级C语言笔试-421(总分97, 做题时间90分钟)一、选择题1.下面不属于软件设计原则的是A) 抽象B) 模块化C) 自底向上D) 信息隐蔽SSS_SIMPLE_SINA B C D分值: 2答案:C[解析] 软件设计遵循软件工程的基本目标和原则,建立了适用于在软件设计中应该遵循的基本原理和与软件设计有关的概念,它们具有抽象、模块化、信息隐蔽和数据独立性。
自底向上是集成测试中增量测试的一种。
2.对于循环队列,下列叙述中正确的是A) 队头指针是固定不变的B) 队头指针一定大于队尾指针C) 队头指针一定小于队尾指针D) 队头指针可以大于队尾指针,也可以小于队尾指针SSS_SIMPLE_SINA B C D分值: 2答案:D[解析] 循环队列是将顺序队列首尾相连形成的,随着插入元素或删除元素的进行,其队头指针及队尾指针是在不断变化的,有时可能会出现队头指针大于队尾指针的情况,也可能是队尾指针大于队头指针。
3.软件(程序)调试的任务是( )。
A.诊断和改正程序中的错误B.尽可能多地发现程序中的错误C.发现并改正程序中的所有错误D.确定程序中错误的性质SSS_SIMPLE_SINA B C D分值: 1答案:A[解析] 调试的目的是发现错误或导致程序失效的错误原因,并修改程序以修正错误。
调试是测试之后的活动。
4.下面描述中,不属于软件危机表现的是A) 软件过程不规范B) 软件开发生产率低C) 软件质量难以控制D) 软件成本不断提高SSS_SIMPLE_SINA B C D分值: 2答案:A[解析] 本题考查软件危机的表现形式。
软件危机表现在软件需求的增长得不到满足,软件开发的成本和进度无法控制,软件质量难以保证,软件不可维护或者维护的程度很低,软件成本不断提高,软件开发的发展赶不上硬件的发展。
所以选项A不属于软件危机的表现。
5.对长度为n的线性表进行顺序查找,在最坏的情况下所需要的比较次数为______。
11计算机二级考试C语言选择题

2009年6月C语言选择题50100在C语言中,合法的字符常量是( D )。
A.'字'B."A"C."ABC"D.'\x41'50101下面叙述正确的是( B )。
A.程序中必须包含有输入语句B.变量按所定义的类型存放数据C.main函数必须位于文件的开头D.每行只能写一条语句50102错误的叙述是( D )。
A.一个C语言源程序可由一个或多个函数组成B.若一条语句较长,也可分写在下一行上C.C程序必须包含一个main()函数D.构成C语言源程序的基本单元是算术表达式50103( A )是关于C语言数据类型的正确叙述。
A.变量必须先定义后使用B.不允许使用空类型C.枚举类型不是基本类型D.数组并不是构造类型50104 main( )函数的位置( B )。
A.必须在自定义函数前面B.可以在自定义函数后面C.必须位于程序的最前面D.必须在自定义函数后面50105 C语言函数体由( C )括起来。
A.< >B.( )C.{ }D.[ ]50106( A )是不正确的叙述。
A.注释说明只能位于一条语句的后面B.C源程序的基本组成单元是函数C.C源程序可由一个或多个函数组成D.每条语句最后必须有一个分号50107 一个C语言源程序是由( B )。
A.一个主程序和若干子程序组成B.函数组成C.若干过程组成D.若干子程序组成50108结构化程序设计的三种基本结构是( C )。
A.函数结构、判断结构、选择结构B.平行结构、嵌套结构、函数结构C.顺序结构、选择结构、循环结构D.判断结构、嵌套结构、循环结构50109 C源程序的调试是指对源程序进行( C )。
A.录入与编辑B.查错与编译C.查错与排错D.连接与运行50110 C语言中,可将一系列语句置于一对( C )之间从而构成复合语句。
A.尖括号"< >"B.圆括号"( )"C.花括号"{}"D.方框号"[ ]"50111构成C源程序的基本单位是( D )。
高级语言程序设计A

高级语言程序设计A一、单选题(20题,1.5分/题,共30分)1.不属于C语言基本数据类型的是( )A.整数B.字符型C.数组型D.浮点型2.C语言中,数值常量0.5的类型是( )A.整型B.单精度浮点数C.双精度浮点数D.长整型3.C语言中,”\x3d”在内存中占用的字节数是( )A.1B.2C.4D.54.表达式5/4的值是( )A.0B.1C.2D.1.255. 在C语言中,数字029是一个()A)八进制数B)十六进制数C)十进制数 D)非法数6. 下列标识符中,合法的是()A)_main B)void C)$123 D)123a7.对于while语句,错误的说法是( )A.用条件控制循环体的执行次数B.循环体至少要执行一次C.循环体有可能一次也不执行D.循环体中可以包含若干条语句8.设int a=9,b=20;则printf(″%d,%d\n″,a--,--b);的输出结果是( )A.9,19B.9,20C.10,19D.10,209 已经a,b,c是整型变量,下列语句中属于正确给a赋值语句是( )A) a=7+b =a+7; B) a=7+b++=a+7; C) a=(7+b,b++,a+7); D) a=7+b+c=a+7;10.语句printf(“%2d”, 123)的输出结果是()A) 123 B) 12 C) 0123 D) 2311. 已知变量a=3, 则语句printf(“%d”, (a+1, a=5, a + 3))的输出结果为()A) 3 B) 4 C) 5 D) 812.执行下列语句int a=8,b=7,c=6;if(a<b) if(b>c){a=c;c=b;}printf(″%d,%d,%d\n″,a,b,c);后输出的结果是( )A.6,7,7B.6,7,8C.8,7,6D.8,7,813. 在switch(表达式)中,表达式的类型描述正确的是()A) 可以是任意类型B) 只能是整型C) 可以是整型或字符型D) 只能是数值类型14 下面的程序A) 有语法错误不能通过编译B) 输出* * * *。
国家二级C语言机试(程序设计基础、C语言概述)-试卷1

国家二级C语言机试(程序设计基础、C语言概述)-试卷1(总分:68.00,做题时间:90分钟)一、选择题(总题数:34,分数:68.00)1.结构化程序设计的基本原则不包括()。
(分数:2.00)A.多态性√B.自顶向下C.模块化D.逐步求精解析:解析:结构化程序设计的思想包括:自顶向下、逐步求精、模块化、限制使用goto语句,所以选择A。
2.在面向对象方法中,不属于"对象"基本特点的是()。
(分数:2.00)A.一致性√B.分类性C.多态性D.标识唯一性解析:解析:对象有如下一些基本特点:标识唯一性、分类性、多态性、封装性、模块独立性好。
所以选择A)。
3.面向对象方法中,继承是指()。
(分数:2.00)A.一组对象所具有的相似性质B.一个对象具有另一个对象的性质C.各对象之间的共同性质D.类之间共享属性和操作的机制√解析:解析:继承是面向对象的方法的一个主要特征,是使用已有的类的定义作为基础建立新类的定义技术。
广义的说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们,所以说继承是指类之间共享属性和操作的机制。
4.结构化程序所要求的基本结构不包括()。
(分数:2.00)A.顺序结构B.GOTO跳转√C.选择(分支)结构D.重复(循环)结构解析:解析:1966年Boehm和Jacopini证明了程序设计语言仅仅使用顺序、选择和重复三种基本控制结构就足以表达出各种其他形式结构的程序设计方法。
5.定义无符号整数类为UInt,下面可以作为类UInt实例化值的是()。
(分数:2.00)A.-369B.369 √C.0.369D.整数集合{1,2,3,4,5}解析:解析:只有B)选项369可以用无符号整数来表示和存储。
A)选项-369有负号,选项C)0.369是小数都不能用无符号整数类存储。
选项D)是一个整数集合得用数组来存储。
6.下列选项中不属于结构化程序设计原则的是()。
(分数:2.00)A.可封装√B.自顶向下C.模块化D.逐步求精解析:解析:结构化程序设计的思想包括:自顶向下、逐步求精、模块化、限制使用goto语句,所以选择A。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
}
总结:
在c语言里有输入输出一个整型数据的控制符(%d,%i。%o,%u,%x,%X),但是没有输入输出一串整型数据的控制符;
在c语言里有输入输出一个字符的控制符(%c),也有输入输出字符串的控制符(%s)。但是当%c在作输入一个字符的控制符时程序运行有误,只可用%s替代%c作为输入一个字符的控制符使用。
关于C语言中的字符串数组输入输出控制符的若干问题
示例一:
#include<stdio.h>
void main()
{
int i;
int a[6];
for(i=0;i<6;i++)
{
printf("please enter a number:\n" );
scanf("%d",&(a[i]));
}
printf("%d,%d,%d,%d,%d,%d",a[0],a[1],a[2],a[3],a[4],a[5]);
{int i;cha a[6];for(i=0;i<6;i++)
{
printf("please enter a number:\n" );
scanf("%c",&(a[i]));
getchar(); //如果用%c作为输入一个字符控制符用,后面必须加此句;
}
a[6] = '\0'; //如果用%c作为输入一个字符控制符用,后面必须加此句;
//不可写成:scanf("%c",&(a[i]));
}
printf("%c%c%c%c%c%c",a[0],a[1],a[2],a[3],a[4],a[5]); //不可用%s%s%s%s%s%s
//也可以这样写:printf("%s",a);
}
示例三:
#include<stdio.h>
void main()
//printf("%d",a);这是错误做法,没有输出若干个实数的控制符,只能一个个输出。
}
实例二:
#include<stdio.h>
void main()
{
int i;
char a[6];
for(i=0;i<6;i++)
{
printf("please enter a number:\n" );
scanf("%s",&(a[i])); //只可从键盘输入一个字符,否则输出将每次输入多余的部分丢弃。
也可以用%c作为输入一个字符的控制符用,但必须给上面程序另加两句getchar();和getchar();才可以。
结论:在输入不管是一个字符还是字符串时都用%s作为控制符。