C语言样题综合
- 格式:doc
- 大小:119.00 KB
- 文档页数:12
选择题1,有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应当是:A)132<回车>B)1,3,2<回车>C)a=1b=3c=2<回车>D)a=1,b=3,c=2<回车>"2,以下能正确的定义整型变量a、b和c,并为c赋初值5的语句是:(A)inta=b=c=5;(B)inta,b,c=5;(C)a=5,b=5,c=5;(D)a=b=c=5;3,已知ch是字符型变量,下面不正确的赋值语句是:(A)ch=’a+b’;(B)ch=’\0’;(C)ch=’7’+’9’;(D)ch=5+9;4,若有以下定义inta,b;floatx;则不正确的语句是:A)a=1,b=2;B)b++;C)a=b=5;D)b=intx;5,对以下说明语句的正确理解是:inta[10]={6,7,8,9,10};A)将五个初值依次赋给a[1]-a[5];B)将五个初值依次赋给a[0]-a[4];C)将五个初值依次赋给a[6]-a[10];D)因为数组的长度与初值的个数不相同,所以此语句不正确。
6,下面程序段的运行结果是:charc[]=”\t\r\n\\\0will\n”;printf(”%d”,strlen(c));A)4B)3C)5D)字符串中有非法字符,输出值不确定.7,判断字符串a和b是否相等,应当使用:A)if(a==b)B)if(!(a!=b))C)if(!strcmp(a,b))D)if(strcpy(a,b))"8,以下正确的函数首部定义形式是:A)doublefun[intx,inty]B)doublefun(intx;inty)C)doublefun(intx,y)D)doublefun(intx,inty)9,下面函数调用语句含有实参的个数为:func((exp1,exp2),(exp3,exp4,exp5));A)1B)2C)4D)510,以下有关宏替换的叙述不正确的是:A)宏替换不占用运行时间B)宏名无类型C)宏替换只是字符替换D)宏名必须用大写字母表示11,若w=1,x=2,y=3,z=4,则条件表达式w<x?w:y<z?y:z的值是:A)4B)3C)2D)112,为了避免在嵌套的条件语句IF-ELSE产生二义性,C语言规定:ELSE子句总是与___配对使用.A)缩排位置相同的IFB)其之前最近的IFC)其之后最近的IFD)同一行上的IF13,以下程序的运行结果是:main(){intm=5;if(m++>5)printf("%d\n",m);elseprintf("%d\m",m--);}A)4B)5C)6D)714,语句WHILE(!E);中的表达式!E等价于:A)E==0B)E!=0C)E!=1D)E==1 15,下面程序段运行结果是:intn=0;while(n++<=2);printf("%d",n);A)2B)3C)4D)有语法错误16,若有如下语句:intx=3;do{printf("%d\n",x-=2);}while(!(--x));则上面程序段输出的结果是:A)1 B)1和-2C)3和0D)死循环 17,执行语句for(i=1;i++<4;);后变量i的值是:A)3 B)4C)5D)不定18,若二维数组a有m列,则在a[i][j]前的元素个数为:A)j*m+iB)i*m+jC)i*m+j-1D)i*m+j+119,以下正确的定义语句是:A)inta[1][4]={1,2,3,4,5};B)floatx[3][]={{1},{2},{3}};C)doubley[][3]={0};D)longb[2][3]={{1},{1,2},{1,2,3}};20,判断字符串S1是否大于字符串S2,应当使用:A)if(S1>S2)B)if(strcmp(S1,S2));C)if(strcmp(S2,S1)>0);D)if(strcmp(S1,S2)>0);。
c语言c操作题库及详解答案C语言C操作题库及详解答案1. 请编写一个C程序,实现两个整数的加法运算,并输出结果。
答案:```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("两个整数相加的结果是:%d\n", sum);return 0;}```2. 编写一个C程序,实现字符串的复制功能。
答案:```c#include <stdio.h>#include <string.h>int main() {char src[] = "Hello, World!";char dest[50];strcpy(dest, src);printf("复制后的字符串是:%s\n", dest);return 0;}```3. 请编写一个C程序,实现求一个整数的阶乘。
答案:```c#include <stdio.h>int factorial(int n) {if (n == 0)return 1;elsereturn n * factorial(n - 1);}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);printf("%d的阶乘是:%d\n", num, factorial(num)); return 0;}```4. 编写一个C程序,实现判断一个数是否为素数。
答案:```c#include <stdio.h>#include <math.h>int isPrime(int n) {if (n <= 1)return 0;for (int i = 2; i <= sqrt(n); ++i) { if (n % i == 0)return 0;}return 1;}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (isPrime(num))printf("%d是素数。
计算机c语言综合试题及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string答案:D3. 在C语言中,以下哪个运算符用于比较两个值是否相等?A. ==B. !=C. <=D. >=答案:A4. C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpyB. strcatC. strcmpD. strlen答案:A5. 在C语言中,以下哪个关键字用于声明一个函数?A. functionB. defC. voidD. int答案:C6. C语言中,以下哪个选项是正确的数组声明?A. int array[10];B. int array[];C. int array[10] = {0};D. All of the above答案:D7. 以下哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. _variableD. All of the above答案:D8. 在C语言中,以下哪个选项是正确的文件包含指令?A. #include <stdio.h>B. #include "stdio.h"C. #include <stdio.h>D. #include "stdio.h"答案:A9. C语言中,以下哪个选项用于定义一个无限循环?A. while(1)B. for(;;)C. do whileD. All of the above答案:D10. 在C语言中,以下哪个关键字用于声明一个指针?A. pointerB. ptrC. *D. ref答案:C二、填空题(每题2分,共20分)1. 在C语言中,使用________关键字可以定义一个宏。
c语言试题及详细答案1. 以下哪个选项是C语言中的关键字?A. intB. floatC. stringD. array答案:A2. 在C语言中,哪个运算符用于计算两个整数的和?A. +B. -C. *D. /答案:A3. 下面哪个选项是C语言中正确的注释方式?A. // 这是一个注释B. /* 这是一个注释 */C. //* 这是一个注释D. /* 这是一个注释 */答案:B4. 在C语言中,以下哪个选项表示的是浮点型变量?A. int a;B. float a;C. char a;D. double a;答案:B5. 以下哪个函数用于输出字符串?A. printf()B. scanf()C. puts()D. getchar()答案:C6. 在C语言中,以下哪个选项表示的是字符型变量?A. int a;B. char a;C. float a;D. double a;答案:B7. 在C语言中,以下哪个选项是正确的函数定义?A. int function() { return 0; }B. int function() { }C. int function() { return 0; }D. int function() { return 1; }答案:C8. 在C语言中,以下哪个选项是正确的数组声明?A. int array[5] = {1, 2, 3, 4, 5};B. int array[] = {1, 2, 3, 4, 5};C. int array[5] = {1, 2, 3};D. int array = {1, 2, 3, 4, 5};答案:A9. 在C语言中,以下哪个选项是正确的条件语句?A. if (x > 0) { ... }B. if (x > 0) ... }C. if (x > 0) { ... }D. if (x > 0) ... }答案:A10. 在C语言中,以下哪个选项是正确的循环语句?A. for (int i = 0; i < 10; i++) { ... }B. for (int i = 0; i < 10; i++) ... }C. for (int i = 0; i < 10; i++) { ... }D. for (int i = 0; i < 10; i++) ... }答案:A。
1.寻找数组中的最大值和最小值2.寻找数组中的中位数3.查找数组中给定元素的索引4.反转数组5.合并两个升序数组6.移位数组7.查找两个数组的交集8.查找两个数组的并集9.查找两个数组的差集10.寻找数组中的众数11.寻找数组中的缺失元素12.寻找数组中的重复元素13.计算数组的和14.计算数组的平均值15.计算数组的方差16.计算数组的标准差17.比较两个数组是否相等18.复制数组19.排序数组20.搜索数组(线性搜索)21.搜索数组(二分搜索)22.插入元素到数组23.删除元素到数组24.更新数组中的元素25.创建动态数组26.释放动态数组27.字符串复制28.字符串连接29.字符串比较30.字符串搜索31.字符串替换32.字符串分割33.字符串反转34.字符串大小写转换35.字符串修剪36.计算字符串长度37.字符串格式化38.链表创建39.链表插入40.链表删除41.链表搜索42.链表反转43.链表排序44.链表合并45.链表复制46.链表释放47.树创建48.树插入49.树删除50.树搜索51.树反转52.树排序53.树合并54.树复制55.树释放56.堆创建57.堆插入58.堆删除59.堆搜索60.堆反转61.堆排序62.堆合并63.堆复制64.堆释放65.图创建66.图插入67.图删除68.图搜索69.图反转70.图排序71.图合并72.图复制73.图释放74.队列创建75.队列插入76.队列删除77.队列搜索78.队列反转79.队列排序80.队列合并81.队列复制82.队列释放83.栈创建84.栈插入85.栈删除86.栈搜索87.栈反转88.栈排序89.栈合并90.栈复制91.栈释放92.哈希表创建93.哈希表插入94.哈希表删除95.哈希表搜索96.哈希表反转97.哈希表排序98.哈希表合并99.哈希表复制100.哈希表释放。
一、单项选择题(共12个每个两分)1.( )是C语言程序的基本单位A. 函数B.过程C.子程序D.子例程2. 下列关于c语言用户标识符的叙述中正确的是______A.用户标识符中可以出现下划线和中划线(减号)B.用户标识符中不可以出现中划线,但可以出现下划线C.用户标识符中可以出现下划线,但不可以放在用户标识符的开头D.用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头3.选出下列标识符中不是合法的标识符的是_______。
A.2aB. _hiC. min1D.ho_in4.下列叙述正确的是________A.break语句只能用于switch语句B.在switch语句中必须使用defaultC.break语句必须与switch语句中的case配对使用D.在switch语句中,不一定使用break语句5. 下列一组初始化语句中,正确的是( )A) int a[8]={ }; B) int a[9]={0,7,0,4,8}; C) int a[5]={9,5,7,4,0,2}; D) int a[7]=7*66.关于C语言的说法错误的是()A. C程序的工作过程是编辑、编译、连接、运行B.C语言不区分大小写C.C程序的三种基本结构是顺序、选择、循环D. C语言从main函数开始执行7.以下下关于C语言中数组的描述正确的是______A.数组的大小是固定的,但可以有不同的类型的数组元素。
B.数组的大小是可变的,但所有数组元素的类型必须相同。
C.数组的大小是固定的,所有数组元素的类型必须相同。
D.数组的大小是可变的,可以有不同的类型的数组元素。
8、以下由while构成的循环执行次数是_____int i=1;While(i==1) i++:A无限次 B.语法错 C.一次也不执行 D.执行1次9.对字符串的操作,下列说明中正确的是()A、可以用赋值表达式对字符数组赋值,如char str[20];str=”china”;B、若有字符数组a和b,且a>b,则strcmp(a,b)为负数C、可用strcpy函数进行字符串的复制来完成字符数组的赋值D、字符串”aaa”在内存中占3个字节10.在C语言中,数组名代表的是( )(A) 数组中全部元素的个数(B) 数组中第一个元素的值(C) 数组中全部元素的值(D) 数组的首地址11.能正确表示a和b同时为正或同时为负的逻辑表达式是()A、(a>=0||b>=0)&&(a<0||b<0)B、(a>=0&&b>=0)&&(a<0&&b<0)C、(a+b>0)&&(a+b<=0)D、a*b>012. 以下那个函数用俩标识求某个数的平方根()A、sqrt()B、fabs()C、pow()D、exp()二、填空题:(每题2分,每题全填对得分,共24分)1.变量的命名规则:变量名只能由____________组成。
c语言考试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,错误的是:A. C语言是一种高级语言B. C语言可以直接被计算机执行C. C语言具有结构化的特点D. C语言具有跨平台的特性答案:B2. C语言中,用于定义一个整型变量的关键字是:A. intB. floatC. doubleD. char答案:A3. 在C语言中,以下哪个运算符用于取模运算?A. %B. /C. *D. -答案:A4. 下列关于数组的描述中,正确的是:A. 数组必须在程序开始时初始化B. 数组的元素可以是不同的数据类型C. 数组的索引从1开始D. 数组的声明必须指定数组的大小答案:D5. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. functionD. define答案:B6. C语言中,用于表示逻辑“与”操作的运算符是:A. &&B. ||C. !D. &答案:A7. 下列哪个选项是C语言中合法的注释?A. // 这是一个注释B. /* 这是一个注释 */C. // 这是一个注释/* 这是一个注释 */D. /* 这是一个注释 */答案:A8. C语言中,用于定义一个空指针的值是:A. NULLB. 0C. falseD. none答案:A9. 下列关于指针的描述中,错误的是:A. 指针可以存储变量的地址B. 指针可以存储函数的地址C. 指针可以存储数组的索引D. 指针可以存储指针的地址答案:C10. 在C语言中,用于定义一个字符型指针的声明是:A. char *ptr;B. int *ptr;C. float *ptr;D. double *ptr;答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型数组的语法是:______ int array[10];。
答案:int2. 如果一个变量的值是10,那么表达式sizeof(&var)的结果是:______。
大学c语言试题题库及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述,正确的是:A. C语言是一种编译型语言B. C语言是一种解释型语言C. C语言是一种面向对象的语言D. C语言不支持函数答案:A2. 在C语言中,用于定义一个整型变量的关键字是:A. intB. floatC. charD. double答案:A3. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. intD. _int答案:B4. C语言中,用于定义一个浮点型数组的语法是:A. int array[10];B. float array[10];C. char array[10];D. double array[10];答案:B5. 在C语言中,哪个运算符用于取模运算?A. %B. /C. *D. +答案:A6. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. ==D. =答案:A7. 在C语言中,用于定义一个字符型数组的语法是:A. int array[10];B. float array[10];C. char array[10];D. double array[10];答案:C8. C语言中,用于声明一个函数的关键字是:A. intB. floatC. voidD. return答案:C9. 下列哪个选项是C语言中的循环结构?A. ifB. switchC. forD. while答案:C10. 在C语言中,用于定义一个字符串常量的语法是:A. "Hello"B. 'Hello'C. "Hello"[10]D. 'Hello'[10]答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________运算符可以连接两个字符串。
答案:+2. C语言中的________关键字用于声明一个无返回值的函数。
一、参考题目及选题(1)学生信息管理系统设计问题描述:学生信息包括:学号, 姓名, 年龄, 性别, 出生年月, 政治面貌, 籍贯, 家庭住址, 电话, E-mail等。
试设计一学生信息管理系统, 使之能提供以下功能:(1)系统以菜单方式工作(2)学生信息录入功能(学生信息用文件保存)(3)学生信息浏览功能(4)学生信息排序、查询功能对信息进行排序, 可以按学号, 按姓名, 按性别, 按出生年月日, 按籍贯进行查询(5)信息统计a) 可以按性别, 按出生年, 按籍贯统计学生人数b) 可以按班级统计学生人数c) 可以按政治面貌统计学生人数按班级统计学生党员人数, 团员人数, 以及所占比例, 设计并输出统计报表。
(6)学生信息的删除与修改●设计要求:●界面比较美观;有一定的容错能力, 比如输入的成绩不在0~100之间, 就提示不合法, 要求重新输入;●最好用链表的方式实现。
算法分析:首先, 一个学生包括这么多的属性, 应该考虑定义一个结构, 其次, 我们应该考虑数据的存储形式:是定义一个数组来存储, 还是定义一个链表呢?在这里假如我们以数组的方式来存储, 当然可以, 但是我们知道, 假如我们定义一个数组的话, 我们首先必须知道学生人数大概是多少, 以便我们确定数组的大小, 但是题目中没有给出, 而且题目要求中有大量的删除、插入操作, 所以用链表的方式比较方便。
对于菜单的实现, 其实也比较简单, 首先我们用printf语句把程序的功能列出来, 然后等待用户输入而执行不同的函数, 执行完了一个功能后又回到菜单。
文件的读写操作大家参照书中的有关文件的章节。
(2)、学生综合测评系统每个学生的信息为: 学号、姓名、性别、家庭住址、联系电话、语文、数学、外语三门单科成绩、考试平均成绩、考试名次、同学互评分、品德成绩、任课教师评分、综合测评总分、综合测评名次。
考试平均成绩、同学互评分、品德成绩、任课教师评分分别占综合测评总分的60%, 10%, 10%, 20%。
一、填空题1.设a、b、c均为int类型变量,用c语言描述命题a或b中有一个大于c____。
2.设a、b、c均为int类型变量,且a=1,b=4,c=3,则表达式!(a<b)||!c&&1的值为__。
3.在c语言switch中,每个”case”和冒号”:”之间只能是____。
4.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是____。
5.请指出int (*p)[5]; 定义中p是_____。
二、判断正误1.一个c语句可以只用一个分号组成。
()2.switch语句中可以根据需要使用或不使用break 语句。
()3.do-while语句构成的循环不能用其它语句构成的循环来代替。
()4.若有定义int a[10]; 则可以用a[10]来引用数组的元素。
()5.若有定义char array[]=”child”; 则数组array所占存储空间的字节数为5。
()三、单项选择1.下面语句中错误的是①m=c>a<b;②int x=y=1;③ k=x,y>0;④ w=--m?0:1;2.能正确定义整型变量a和b,并为它们赋初值5的语句是① a=b=5; ② inta,b=5;③ int a=b=5; ④ inta=5,b=5;3.以下不正确的if语句形式是① if (a<b); ②if (a==b) a=0,b++;③ if (a<b) a=0 else b=0; ④if (a!=b) a=b;4.以下程序段中由构成的循环,执行的次数为int k=0; while (k=1) k++;①无限次②有语法错误不能执行③一次也不执行④执行一次5.下面程序段的内循环体一共需要执行的次数为for (i=5; i; i--)for (j=0; j<4; j++){…….}① 20 ②24③25 ④306.以下对一维数组a的正确说明是① int a(10);②int n=10,a[n];③int n;scanf(“%d”,&n);int a[n];④#define SIZE 10int a [SIZE];7.若定义了int i, j, *p, *q; 下面合法的赋值是①i=&j;②*q=&j;③q=&p;④p=&i;8.设有如下定义int (*p)()则说法正确的是① pt是指向函数的指针变量,该函数的返回值是整型数据②pt是指向一维数组的指针变量③pt是一个函数名,该函数的返回值是指向整型数据的指针④pt是指向整型数据的指针变量9.下面函数调用语句含有实参的个数是func((a,b),(c,d,e));① 1 ②2③3 ④410.在c语言程序中以下正确的说法是①函数的定义可以嵌套,但函数的调用不能嵌套②函数的定义不可以嵌套,但函数的调用可以嵌套③函数的定义和调用都可以嵌套④函数的定义和调用都不能嵌套四、读程序,写出运行结果,不完整的程序补充完整。
下面程序的运行结果是________.#include <stdio.h>void main(){ int x=1;if (x=2)printf(“OK”);else if (x<2) printf (“%d\n”,x);else printf(“Quit”);}1.若运行以下程序时输入:100回车,则运行结果是 _____ _ __ main( ) { int a;scanf (“%d ”,&a);printf (“%s ”,(a%2!=0?”no:”yes ”); }2. 下面程序段的运行结果是______ for (a=1,i=-1; -1<=i<1;i++) { a++; printf(“%d ”,a);} printf(“%d ”,i);3. 下面程序的功能是计算1-3+5-7+…-99+101的值,请填空 #include<stdio.h> void main() {int i, t=1, s=0; for (i=1; i<=101;i+=2) { ①; s=s+t; t=-t/i;} printf (“%d\n ”,s); }4. 下列程序段的输出结果是 main(){ char *str=”I am a teacher ”;printf (“%s ”,str+1); }五、写出表达式的值已知a=3, b=4, c=5, d =’a’ ,f=3.0,1. a+=a; 2. a-=a+b; 3. a%=(c%3);4. (int)(a)+(int)(f*2) 5. a=a+d;六、 编程题1、 用π/4≈1-1/3+1/5-1/7+……公式求π的近似值,直到最后一项的绝对值小于10-8为止。
2、 写程序判断某一年是否是闰年。
(教材107) 3、 读入一个数判断其是否是素数。
(教材126) 4、 用冒泡法对读入的10个数据排序,用一维数组实现。
(教材134)5、 写两个函数分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数并输出结果。
(教材202) 6、 向一维数组读入10个整数,用指针变量对数组中的数据进行输出。
(教材232) 填空题6. 代数式22b a +,用c 语言表示应写成____。
7. 在c 语言源程序中,其语句是由表达式加_____构成。
8. a=5,b=4,c=1,则a>b>c 的值是____。
9. putchar(‘\n ’)的输出结果是____。
10. 标准C 中提供了一些输入输出函数,它们是putchar(),getchar(), ___和__等函数。
11.用year 表示某年,则判断year 为闰年的逻辑表达式为(year%4==0&&year%100!=0)||year%400=0. 12. char name[10]定义了一个字符数组,数组名为name,有10个元素。
13. 字符串结束的标志为’\0’.14. C 程序中的函数分两类,分别为标准函数和自定义函数。
15. C 提供的预处理功能有3种,即宏定义,文件包含和条件编译。
判断正误6. 算术运算符%只能用于整数。
( )7. C 语言规定:在一个源程序中, main 函数的位置是任意的。
( ) 8. c 程序中,sum 和SUM 代表同一变量。
( )9. ‘\0 ’代表ASCII 码值为 0,它是一个不可显示的空操作符。
( )10.有输入函数scanf(“%d :%d”,&a,&b) ,则输入应采用如下形式:12 ,23 ↙11.switch(表达式)中,表达式可以是任何类型。
( √)12.在循环控制中,goto 语句为有条件转向循环。
(⨯) 13.在int number[4]={0,1,2,3}中,number[4]=3。
(⨯)14. 如果函数值的类型和return 语句中表达式的值不一致,则以函数类型为准。
( √) 15.数组元素的指针就是数组元素的地址。
( √) 单项选择3. 一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是①有零个或多个输入 ②) 有零个或多个输出③ 有穷性 ④ 可行性4.Putchar()函数可以向终端输出一个:①整型变量表达式值②实型变量值③字符串④字符或字符型变量值3.要调用函数getchar()时,在#include中应包含:①“stdio.h”②“string.h”③“math.h”④“ctype.h”4.以下叙述中正确的是① C语言的源程序不必通过编译就可以直接运行② C语言中的每条可执行语句最终都将被转换成二进制的机器指令③ C源程序经编译形成的二进制代码可以直接运行④C源程序是由除main()以外的函数组成的。
5.对于while,do –while,for循环,结束本次循环用:① break ② goto ③continue ④for6.Printf函数中代表一个“换行”的符号是:① \f ②\t ③\n ④\m7 .以下叙述不正确的是:①在C程序中,逗号运算符的优先级最低。
②在C程序中,MAX和max是两个不同的变量。
③若a和b类型相同,在计算了赋值表达式a=b后,b中的值将放入a中,而b中的值不变。
④当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值。
8 .判断char型变量ch是否为大写字母的正确表达式是:①‘A’<=ch<=‘Z’② (ch>=‘A’)&(ch<=‘Z’)③ (ch>=‘A’)&&(ch<=‘Z’) ④ (‘A’<= ch)AND(‘Z’>= ch)9 .执行语句for(i=1;i++<4; );后变量i的值是:①3 ②4 ③5 ④不定10 .以下对二维数组a的正确说明是:①int a[3][]; ②float a(3,4);③doublea[1][4] ;④float a(3)(4);11 .以下正确的函数定义形式是:①double fun(int x,int y)②double fun(int x; int y)③double fun(int x, int y);④double fun(int x,y);12 .以下程序的运行结果是:.#define sum(x,y) (x+y)main(){int i=10,j=4,k;k=10*sum(i,j);printf("%d\n",k);getch();}①104 ②140 ③50 ④1413 .设p1和p2是指向同一个int型的一维数组指针变量,k为int型变量,则不能正确执行的语句是:①k=*p1+*p2;②p2=k; ③p1=p2; ④k=*p1*(*p2);14. 下列关于结构变量的用途描述中,错误的是( )。
①可作函数参数②可作函数返回值③可作数组元素④可作四则运算15.在下面语句中,将fp定义为文件指针的是:① FILE *fp; ② file *fp; ③ FILE fp; ④ File *fp;五、读程序,写出运行结果,不完整的程序补充完整。
1.若运行以下程序时,从键盘输入2473,回车,则下面程序的运行结果是__668977____.#include <stdio.h>main(){ int c;while ((c=getchar())!=’\n’)switch(c-‘2’) /* 数字字符‘2’的ASCII值为50{case 0:case 1: putchar(c+4);/* 数字字符‘6’的ASCII值为54case 2: putchar(c+4); break;/* 数字字符‘8 ’的ASCII值为56case 3: putchar(c+3);default: putchar (c+2); break;}printf(“\n”);}2.main( ){ char k; int i;for(i=1;i<3;i++){ scanf(“%c”,&k);switch(k){ case ‘0’:printf(“another\n”);case ‘1’: p rintf(“number\n”);}}}程序运行时,从键盘输入:01<回车>,程序执行后的输出结果是_anothern umbern umber3.当a=1 ,b=3,c=5,d=4时,执行完下面的一段程序后x的值是__2__if(a<b)if(c<d) x=1;elseif(a<c)if(b<d) x=2;else x=3;else x=6;else x=7;4.. 以下程序实现:当x<0时,y=-1, 当x=0时,y=0; 当x>0时,y=1。