C语言学习知识考试题及其规范标准答案.doc
《C语言学习知识考试题及其规范标准答案.doc》由会员分享,可在线阅读,更多相关《C语言学习知识考试题及其规范标准答案.doc(9页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、-*一、单项选择题:(10分,每题2分)1char *p10;该语句声明了一个: 。A) 指向含有10个元素的一维字符型数组的指针变量pB) 指向长度不超过10的字符串的指针变量pC) 有10个元素的指针数组p,每个元素可以指向一个字符串D) 有10个元素的指针数组p,每个元素存放一个字符串2若int x;且有下面的程序片断,则输出结果为: 。for (x=3; xpt1.x D)rt-pt1.x5若二维数组a有m行n列,则下面能够正确引用元素aij的为: 。A) *(a+j*n+i) B) *(a+i*n+j) C) *(*(a+i)+j) D) *(*a+i)+jCDDDC二、分析程序并写
2、出运行结果。(25分,每题5分)1#include main()int n;static char *monthName=Illegal month, January, February,March, April, May, June, July, August, September, October, November, December;for (n=1; n=12; n+)printf(%sn, monthNamen); 运行结果是:JanuaryFebruaryMarchAprilMayJuneJulyAugustSeptemberOctoberNovemberDecember2#in
3、clude#define ARR_SIZE 7void YH(int aARR_SIZE, int n);void PrintYH(int aARR_SIZE, int n);main()int aARR_SIZEARR_SIZE; YH(a, ARR_SIZE-1);PrintYH(a, ARR_SIZE-1);void YH(int aARR_SIZE, int n)int i, j;for (i=1; i=n; i+) for (j=1; j=i; j+) if (j=1 | i=j)aij = 1; else aij = ai-1j-1 + ai-1j; void PrintYH(in
4、t aARR_SIZE, int n)int i , j ; for (i=1; i=n; i+)for (j=1; j=i; j+) printf(%4d, aij); printf(n); 运行结果是:11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 13#include main()int i, n;for (i=1; i=5; i+)printf(Please enter n:);scanf(%d, &n);if (n = 0) continue;printf(n = %dn, n);printf(Program is over!n);程序运行时输入:1 -2
5、3 -4 5运行结果是:n = 1Please enter n: Please enter n:n = 3Please enter n: Please enter n:n = 5Program is over!4#include void Func(int n);main()int i;for (i = 0; i 2; i+)Func(i);void Func(int n)static int t = 1;printf(t=%dn, t+); 运行结果是:t=1t=25#include int Func(int i);main()int i;for (i=3; i0; i-)k+;return
6、 (k);运行结果是: 13 17三、阅读并完成程序,在标有下划线的空白处填入适当的表达式或语句,使程序完整并符合题目要求。(20分,每空2分)1. 下面程序用于读入10个字符串,然后找出最大的字符串并打印。#include #include main() char str1080,maxstring80; int i;printf(Enter ten strings:n);for (i=0; i10; i+) scanf(%s, stri );strcpy(maxstring, str0); for (i=1; i10; i+) if (strcmp(maxstring, stri)0str
7、cpy(maxstring, stri);printf(The max string is:%sn,maxstring);2. 下面这个程序用于交换两个数组的对应元素的值。#include #define ARRAY_SIZE 10void Swap(int *x, int *y);void Exchange(int a, int b, int n);void InputArray(int a,int n);void PrintArray(int a,int n);main()int aARRAY_SIZE, bARRAY_SIZE, n;printf(Input array lenth n=
8、10: );scanf(%d, &n);printf(Input array a:n);InputArray(a, n);printf(Input array b:n);InputArray(b, n); Exchange(a,b,n); printf(After swap:n);printf(Array a:n);PrintArray(a, n);printf(Array b:n);PrintArray(b, n);void Swap(int *x, int *y) int temp; temp=*x ; *x=*y ; *y=temp ;void Exchange(int a, int b
9、, int n) int i;for (i = 0; i n; i+)Swap( &ai,&bi ); void InputArray(int a, int n)int i;for (i = 0; i n; i+) scanf(%d , &ai) ;void PrintArray(int a, int n)int i;for (i = 0;i n;i+)printf(%d , ai);printf(n);3. 从键盘任意输入一个年号,判断它是否是闰年。若是闰年,输出Yes,否则输出No。已知符合下列条件之一者是闰年:能被4整除,但不能被100整除。能被400整除。#include main()
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 学习 知识 考试题 及其 规范 标准答案
限制150内