C语言程序设计题目及解答-08.doc

上传人:新** 文档编号:546592313 上传时间:2023-08-31 格式:DOC 页数:6 大小:101KB
返回 下载 相关 举报
C语言程序设计题目及解答-08.doc_第1页
第1页 / 共6页
C语言程序设计题目及解答-08.doc_第2页
第2页 / 共6页
C语言程序设计题目及解答-08.doc_第3页
第3页 / 共6页
C语言程序设计题目及解答-08.doc_第4页
第4页 / 共6页
C语言程序设计题目及解答-08.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《C语言程序设计题目及解答-08.doc》由会员分享,可在线阅读,更多相关《C语言程序设计题目及解答-08.doc(6页珍藏版)》请在金锄头文库上搜索。

1、一、判断题(12分)1. 字符串只能存放在字符型数组中。2分 2. 字符数组中字符串可以整体输入输出。2分 3. char c=Very Good; 是一个合法的为字符串数组赋值的语句。2分 4. 字符常数和字符串常数的存储是相同的,都是以字符的ASCII码值进行存放。2分 5. 用gets函数可以接收一个含有空格的字符串。2分 6. 用printf函数输出一个字符串时,格式字符为%S,输出项可以是此字符串或存放此字符串的数组的数组名。2分 二、选择题(12分)1.下述对C语言字符数组的描述中错误的是( )。C 2分 A. 字符数组的下标从0开始B. 字符数组中的字符串可以进行整体输入/输出C

2、. 可以在赋值语句中通过赋值运算符=对字符数组整体赋值D. 字符数组可以存放字符串2.下列对字符数组的初始化不正确的是()C 2分 A. char s5=abc; B. char s5=a,b,c,d,e;C. char s5=abcde; D. char s=abcde; 3.有数组定义语句“char a20;”,则正确的输入语句为()D 2分 A. scanf(%s, &a);B. scanf(%s, a);C. gets(a20);D. gets(a); 4.有数组定义语句“char a20;”,则正确的输入语句为( )。D 2分 A. scanf(%s,&a);B. scanf(%s,

3、a);C. gets(a20);D. gets(a); 5.C语言中,每个字符串的末尾都有一个字符串的结束符,表示字符串的终止。下列哪一个字符是字符串的结束符( )。A 2分 A. 0B. ”0”C. ”0”D. 0 6.若给出以下定义:char x=abcdefg;char y=a,b,c,d,e,f,g;则正确的叙述为_。C 2分 A. 数组x和数组y等价B. 数组x和数组y等价C. 数组x的长度大于数组y的长度D. 数组y的长度大于数组x的长度 三、程序填空题(46分)1. 功能:识别输入的字符串,每个单词输出一行 12分 #include #include void main() in

4、t c; int inspace; inspace = 0; while(c = _(1)_) != n) if(_(2)_ | c = t | c = n) if(inspace = 0) inspace = 1; putchar(n); else inspace = 0 ; _(3)_; (1)答案 4分 getchar() (2)答案 4分 c= (3)答案 4分 putchar(c) 2. 功能:产生并输出杨辉三角的前七行。10分1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 #includevoid main

5、( ) int a77; int i,j,k; for (i=0;_(1)_;i+) ai0=1; aii=1; for (i=2;i7;i+) for (j=1;ji;j+) aij= ai-1j-1+_(2)_; for (i=0;ij;j+) printf(%6d,_(3)_); printf(n); (1)答案 3分 i7 (2)答案 4分 ai-1j (3)答案 3分 aij 3. 功能:删除字符串中的指定字符,字符串和要删除的字符均由键盘输入。 15分 #include stdio.hint main() char str81,ch; int i,k=0; printf(Pleas

6、e input the string:n); gets(_(1)_); printf(Please input the character you want to delete:n); ch=getchar(); for(i=0;_(2)_;i+) if(stri!=ch) _(3)_; k+; _(4)_; puts(str); (1)答案 3分 str (2)答案 4分 stri!=0 (3)答案 4分 strk=stri (4)答案 4分 strk=0 4. 功能:考查字符串数组的应用。按要求输出26个大写的英文字母。 9分 #include void main (void) char

7、string256; int i; for (i = 0; i 26; _(1)_) stringi = _(2)_; stringi = 0; printf (the arrary contains %sn,_(3)_); (1)答案 3分 i+ (2)答案 3分 A + i (3)答案 3分 string 四、程序设计题(30分)1. 字符串统计 10分 题目描述对于给定的一个字符串,统计其中数字字符出现的次数。 输入描述输入数据是一个字符串。 输出描述对于输入数据,输出该串中数值的个数。 样例输入asdfasdf123123asdfasdf 样例输出6 #includevoid main

8、() char a100; int i,s=0; gets(a); for(i=0;ai!=0;i+) if(ai=0&ai=9) s+; printf(%dn,s); 2. 海选女主角 10分 题目描述电影杭电记忆准备海选女主角,面试那天,刚好来了m*n个MM,站成一个m*n的队列,导演为每个MM打了分数,分数都是32位有符号整数(分数还可能为负)。选拔规则是:要选一个面试分数绝对值(必须还是32位整数)最大的MM。特别说明:如果不幸选中一个负分的MM,也没关系,因为我觉得,如果不能吸引你,那要想法恶心你。 输入描述每组输入数据的第一行是两个整数m和n,表示应聘MM的总共的行列数,然后是m行

9、整数,每行有n个,m和n的定义见题目的描述。 输出描述对于每组输入数据,输出三个整数x,y和s,分别表示选中的MM的行号、列号和分数。note:行号和列号从一开始,如果有多个MM的分数绝对值一样,那么输出排在最前面的一个(即行号最小的那个,如果行号相同则取列号最小的那个)。 样例输入2 31 4 -3-7 3 0 样例输出2 1 -7 #include#include#define N 20void main() int aNN,m,n,i,j,max,maxi,maxj; scanf(%d %d,&m,&n); for(i=1;i=m;i+) for(j=1;j=n;j+) scanf(%d

10、,&aij); max=fabs(a11); maxi=maxj=1; for(i=1;i=m;i+) for(j=1;j=n;j+)if(maxfabs(aij)max=fabs(aij);maxi=i;maxj=j; printf(%d %d %d,maxi,maxj,amaximaxj); 3. C语言合法标识符 10分 题目描述输入一个字符串,判断其是否是C语言的合法标识符。 输入描述每组输入数据是一个长度不超过50的字符串。 输出描述对于每组输入数据,如果是C的合法标识符,则输出yes,否则,输出“no”。 样例输入12ajffi8x_a 样例输出noyes 答案一:#include#includevoid main()char a50;int i, flag;gets(a);if( isalpha(a0) !=0 | a0=_ )for(i=1;ai!=0;i+)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号